
Stm32&&Arm9
文章平均质量分 82
记录stm32与arm9开发过程中的实际问题
zhczzm
互联网大厂工作,10年linux下 c++开发经验,从事性能优化调优工作,对c11/c14/c17新特性有深刻的认识,对于c++代码异常处理有比较多的实战经验,精通linux下coredump分析,网络通信,数据结构和算法。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
stm32的推挽输出与开漏输出
首先看以下STM32的GPIO的原理图如下:当端口配置为输出时: 开漏模式:输出 0 时,N-MOS 导通,P-MOS 不被激活,输出0。 输出 1 时,N-MOS 高阻, P-MOS 不被激活,输出1(需要外部上拉电路);此模式可以把端口作为双向IO使用。 推挽模式:输出 0 时,N-MOS 导通,P-MOS 高阻转载 2015-09-09 21:52:08 · 1519 阅读 · 0 评论 -
单片机传递浮点数方法
今天突然用到了用单片机和上位机进行传递浮点数方法是这样的。1.将浮点数转化为整数,然后传递整数的ascII码形式。2.进行编码,这个暂时我是这样理解的,比方说a=7.345678这样的浮点数。可以进行编码 成一个帧数据 帧头 +数据位+ 整数编码+加小数点+小数编码具体的解码方法是:a/1取整,得到整数7,然后再添加一个小数点编码!(如0x55),然后再用a-7得到小数部分原创 2016-03-20 11:52:44 · 4451 阅读 · 0 评论 -
stm32常见错误分析
原文:http://blog.csdn.net/zhzht19861011/article/details/58235371.warning: #550-D: variable "d" was set but never used描述:变量'd'定义但从未使用,或者是,虽然这个变量你使用了,但编译器认为变量d所在的语句没有意义,编译器把它优化了.解决:仔细衡量转载 2016-04-09 20:10:51 · 6957 阅读 · 1 评论 -
对 AD转换的理解
自己学习的单片机也有一段时间了,刚开始接触单片机的时候,就总是强调AD,单片机自带AD不,等一些说法,但是自己从来没有仔细想过AD的过程,只是知道是将模拟量转化为数字量,但是不知道这个采集过来的电压是2.5V,为什么在数码管上显示为2.5V就是转化成数字量了,现在来说一下自己的理解,只是自己的主观理解,不一定准确!所谓模拟量很好理解就是模拟量是指变量在一定范围连续变化的量;也就原创 2015-11-26 20:03:14 · 11741 阅读 · 3 评论 -
stm32程序下载方式总结
程序下载是一切的基础,对于搞单片机的人最开始学的就是程序下载,本人在刚开始学习51单片机的时候就只是知道串口下载,以至于什么usb-转串口的芯片的作用也没有去了解,直到现在学习使用了stm32都快两年了,才第一次深入的考虑这些问题,想总结一下,当然这个都是参考网络上的一些牛人,借鉴一下别人的,然后自己整理了一下,为刚入门单片机的新手们简单解释一下,这些完全是本人的理解,不对之处,还请指正。先总原创 2016-04-23 18:51:09 · 20829 阅读 · 1 评论 -
单片机上操作系统的好处
自己在上学的时候,搞过2年的单片机STM32编程,当时还记得一心想在上面跑个操作系统,UCOS操作系统,但是当时自己为什么要上这个操作系统,不是特别的清楚,后来自己在实际工作中,做了应用软件,感觉有了一些深刻的体会。1.上操作系统有很多资源可以利用,系统的内存管理,线程进程的使用。文件系统的使用,图形系统的使用,这个是你在没有上操作系统的时候不能使用的。2.对于多任务的处理更加简单了,原来...原创 2017-09-24 07:57:04 · 21449 阅读 · 4 评论 -
在单片机向上位机串口助手发送asc码大于127的字符,串口助手上显示乱码!
在单片机向上位机串口助手发送asc码大于127的字符,串口助手上显示乱码!今天在帮别人调程序的时候,发现大于127的时候,在上位机串口上进行字符显示的时候,没有转化成自己想要的字符,而是出现了乱码的现象,原因是键盘上没有,是不可以显示的字符!所以显示不出来。那么0到127是否都能显示出来吗!等待验证!原创 2016-01-11 16:28:18 · 1585 阅读 · 0 评论 -
stm32f10x.h 是库3.0以后的; stm32f10x_lib.h 这个是库2.0的吧 哎,打开看看不就知道了啊!
今天给师弟看看程序,结果发现有的是用stm32f10x.h而有的是用的 stm32f10x_lib.h到底这两个库文件有什么区别呢?原创 2015-12-25 21:33:47 · 1461 阅读 · 0 评论 -
四位一体数码管总有一位比其它数码管明显变亮
最近师弟问了我一个问题,就是为什么他的开发板上的数码管,按照开发板厂商提供的这个原始的程序,以及连接方式烧写进去之后,总有一位数码管特别亮,而且还显示的是8.,经过了分析解决了这个问题。其实四位一体数码管有一位特别的亮,主要就是一个原因造成的,就是因为它的点亮时间比其它人的长,所以他才会亮,也就是他的片选时间长,或者更严重的是他一直被片选了,对于共阴数码管来说,也就是他的片选信号是低电平,我将原创 2015-11-22 11:16:37 · 5019 阅读 · 0 评论 -
stm32位操作函数(未完待续)
stm32位操作函数昨天看到了普中科技的数码管操作函数,对stm32的位操作函数,自己也不太懂,就查了一下,现在整理学习笔记如下:主要学习到了stm32操作函数的两个位操作函数,现在我们用寄存器和库函数来分别进行说明,库函数是这两个函数,GPIO_Reset Bits和GPIO_Set Bits,GPIO_Write Bit 而对寄存器的操作有两个函数:原创 2015-11-22 12:46:04 · 1964 阅读 · 0 评论 -
32程序仿真时出错,复位按钮变暗
在用stm32进行联调时,在师弟电脑上复位按钮变暗,但是在我的电脑上是正常的,后来经过验证,不影响程序的正常运行原创 2015-11-18 09:27:39 · 422 阅读 · 0 评论 -
stm32串口发送数据出现问题
在用stm32向上位机发送串口数据的时候,发现发送的个数和上位机接收到的数据个数不匹配,后来发现是延时的问题,在发送的时候加个延时就可以了!原创 2015-11-18 09:32:12 · 7646 阅读 · 0 评论 -
串口传递浮点数
原文网址:http://blog.tianya.cn/blogger/post_read.asp?BlogID=991984&PostID=23898227前段时间应师兄要求,要通过单片机串口实现Modbus协议,在看了协议的内容后写好了程序的框架,然后根据不同的协议功能码分别实现不同的功能,比如对下位机分别读取或者写入线圈状态(位状态)、二进制数据以及浮点数等。其他的数据格式挺好实现,但怎样转载 2016-01-09 10:25:25 · 9689 阅读 · 0 评论 -
如何在KEIL下制作出自己的库文件
今天自己看stm32在创建工程的时候,包含了一个库文件stm3210xR.LIB,而且自己还发现,我无法查看其中的内容!而且在我编译我的.c文件的时候,又发现了在.c文件里包含的许多的.h文件,在其下目录里生成了!这是为什么啊,我根本没有定义这些.h文件啊,更主要的是我也没有定义相应的.c文件啊?具体见下面的截图啊!stm32f10x_rcc.h 这个文件怎么来的呢?文件里定义的以及他的原创 2015-12-25 21:08:39 · 8892 阅读 · 0 评论 -
中断的上半部分和下半部分
从 linux1.x版本开始,中断处理程序从概念上被分为上半部分(tophalf)和下半部分(bottomhalf)。在中断发生时上半部分的处理 过程立即执行,因为它是完全屏蔽中断的,所以要快,否则其它的中断就得不到及时的处理。但是下半部分(如果有的话)几乎做了中断处理程序所有的事情,可以 推迟执行。内核把上半部分和下半部分作为独立的函数来处理,上半部分的功能就是“登记中断”,决定其相关的下半...原创 2019-09-25 09:29:10 · 2241 阅读 · 0 评论