您的位置 首页 报告

STM32学习体会

学习STM32也有一段时间了,周围的人也在学习这款单片机,感觉它是越来越流行,没办法,功能强大,又便宜,谁不愿意用呢。搞不懂AVR,现在

学习STM32也有一段时刻了,周围的人也在学习这款单片机,感觉它是越来越盛行,没办法,功用强大,又廉价,谁不乐意用呢。搞不懂AVR,现在都快被挤兑成诺基亚了,仍是死守价格不廉价!没学的就越过啊,STM32,MSP430都是不错的挑选

由于暑假的时分学了MSP430,所以现在学STM32让我感觉很简略就上手了,比较51,主要是初始化愈加繁琐了,没办法嘛,功用强大,寄存器就多,多了装备起来就杂乱一些。

个人感觉一开端仍是走寄存器道路,由于只需学懂了底层的东西才干更好的了解它的功用是怎样完成的,才干从中找出来捷径。今后的话形似还能够走库函数道路,那样能够大大的缩短开发周期。

简直一切的单片机开端都是在介绍IO口,可是我感觉在此之前应该学习一下时钟,STM32的时钟使能分的HH特别细,每一个外设都有一个对应的时钟使能位,还有相对应的复位位,根本上都在RCC->APB1ENR,RCC->APB2ENR两个寄存器里边,简直初始化每一个外设之前,包含IO口,都要使能它的时钟,STM32还有一个后背区,当单片机复位的时分,这个区域是不会复位的,它的RTC模块只需有后备电源,即便单片机关机了,也能够给你供给大约136年的实时时钟计时!

下面便是IO口了,它的IO口有8种形式,可是常用的就那么几种,推拉式输出,推拉式输入,复用功用等等,每四位操控一个IO口,最常用的便是0X8,0X3。使能了时钟,设置好形式,就能够运用它的IO了,输出电平的凹凸便是操控ODR,输入便是读IDR,可是这两个寄存器只能全体拜访。可是STM32一切的位带操作为咱们能够像操作51相同操作它的IO供给了或许,例如,假如要操控PA1这一位,只需对PAout(1),PAin(1)操作就行了,免去了数据的位运算!还有一点便是留意特别IO,由于有的IO复位的时分默许是复用功用,如和JTAG有关的几个IO,假如你想把它当成一般IO运用,先把JTAG禁用了之后就OK了。

再后边便是外部中止了,它的每个IO都能够供给中止功用,对应着一条中止线,但中止线是有复用的,至所以哪一种中止,就要看它的中止标志寄存器了,如PA1,PB1,PC1,PD1,PE1共用EXTI1这一条中止线,几条中止线又共用一个中止向量,当然,有的是独享的。如RTC的秒中止和闹钟中止还有溢出中止,共用了RTCIRQChannel这个中止向量,进去中止服务程序之后,经过判别中止标志寄存器的哪一方位位了,就能够知道是哪个中止了。可是,中止标志要软件清零!这点很重要。STM32还有一点很人性化,便是中止向量能够从头映射!尽管有些约束,但仍是很人性化的,给你画PCB的时分供给了更多挑选!至于中止的装备,墨守成规的去弄就好了!

后边还玩了看门狗,这个能够避免程序跑飞,不过现在对咱们来说,作用不大。不过学过MSP430的朋友要留意,MSP430的看门狗复位时默许敞开,而STM32的默许值也是封闭!假如对它不了解,就先别用,由于狗饿了就会咬你的。

后边玩了一下TFTLCD,得阐明一下,接触屏,它的“接触”和“屏”是分隔的,有不同的操控器,要别离编写驱动程序。我现在只弄了屏幕显现,这种彩屏最烦人的便是初始化,我的这块操控器有200多指令,所以告知你一个简洁办法,复制粘贴,然后做细节改动,由于咱们不是做屏幕开发的,没必要去写这个初始化。之后就简略了,单点操作的话,先写入坐标,然后写入RGB的值,我的屏幕是565格局,便是R有五位操控,G有6位操控,B有5位操控,值越大,色彩越深!仅有烦人的便是他没有字库,要自己制造字库,主张把根本的ASCII中的字符做成字库存在头文件中。由于很少用汉字,并且汉字量实在是太大了!用PC2LCD取模软件制造。

昨日买了一块OLED屏幕,它是自发光的,所以看起来很舒畅,并且亮度能够软件调控,大约只需硬币巨细,就花了我40块钱,不过分辨率还能够,128×64,用过12864LCD的能够幻想一下,相同的像素点,缩小到硬币巨细,并且仍是自发光,作用的确很漂亮。它的操作也不难,支撑5种接口(这个要看操控器类型),有8080,6080,三线SPI,四线SPI,IIC,不过SPI形式下不能进行读操作。在8080操控形式下,读的时分最好来一次假读。相同的,初始化去复制粘贴就好了!然后每次写入都要求是整个字节写入。
时刻原因,先写到这儿,定时器改天再写。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/baogao/317545.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部