PID控制的51汇编程序 ;//**************************************************************************************************************;//功能:电机控制的PID(积分分离)PID(void)执行时间少于70uS/932-12MHz;//设计者:牟联树;//日期:20... 2023-06-13 51单片机程序PID算法
误解单片机程序运行 关于程序的执行,以前想的不多,没有意识到一个程序在运行时,从哪里读指令,数据又写在哪里。最近在看CSAPP时这个念头经常在脑袋中晃荡。从单片机上知道,在上电的那一刻,MCU的程序指针PC会被初始化为上电复位时的地址,从哪个地址处读取将要执行的指令,由此程序在MCU上开始执行(当然... 2023-06-13 单片机程序单片机指令内存文章单片机基础知识
下载烧录后, 如何判定程序是否运行 废话少说. 记录.1. 先用仿真器(JTAG/J-link)下载到板子内, 下载后, 在程序的第一行设置断点, 让它停住, 能停住, 说明仿真器没问题, 程序能执行起来了.2. 在检查下 PC 寄存器的值是否正确. 以确定没有跑飞掉, 在指定的范围内.3. 检查下 CPU 内部 RAM (或者外部的 SDRAM)... 2023-06-13 单片机烧录单片机程序单片机基础知识文章单片机基础知识
stc单片机ad转换程序心得 1、在初始化ad的时候,一定要第一个给ad提供电源,即adc_power一定要第一个置1;2、在每次对adc-contr进行操作后,必须延时至少4个时钟周期,原因是adc_contr这个寄存器需要时间存储信息;3、在对adc_contr进行操作时,尽量不要用位寻址。直接对整个寄存器进行修改。4、在数据手册上... 2023-06-13 STC单片机单片机程序单片机基础知识文章单片机基础知识
单片机程序的分层设计 分层写的好处有三:1 开发的快速性 诚如楼上那位所言,把一个工程分成 底层\中间层\应用层编写,程序员也分为底层程序员, 中间层程序员,应用层程序员,只要三者协调好了,那么开发过程可以并行进行,节省开发时间, 缩短周期,能快速占领市场,也有利于公司产品的保密2 系统... 2023-06-13 单片机程序分层设计文章单片机基础知识
cc1101的详解及单片机程序 1.初始化SPI,MCU各引脚。当有数据接收或发送状态声明时,有中断和查询两种方式。GDO0与GDO2引脚输出至MCU引脚,若要用中断则要接至MCU外部中断引脚,查询时则可用GPIO。2.复位CC1101。3.初始化CC1101。(写操作时可从SO中读出CC1101状态)初始化后CC1100为IDLE状态.4.状态机转换... 2023-06-13 CC1101详解单片机程序文章单片机基础知识
如何防止单片机程序丢失 一、改善电源 尽量改善电源。这是老话了。并不是说单片机能工作就行,电源要设计好,加上104去耦电容改进电路布局等措施。二、使用电压监测芯片二、使用带电压监测的复位芯片。防止上电/下电时,单片机电压处于工作和不工作的临界时,单片机自己胡来。上电后,电容从0V逐渐升到VC... 2023-06-13 防止单片机程序丢失文章单片机其他
单片机程序死机跑飞原因分析 单片机程序死机,跑飞了可以从以下几个方面查找原因:1. 意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象2. 中断变量处理不妥。若定义某些会在中断中修改的全局变量,这时要注意两个问题:首先为了防止编译器优化中断变量,要在这些变量... 2023-06-13 单片机程序死机跑飞文章单片机基础知识
单片机程序设计的十层功力,你练到那一层了? 第一层 : 我来了第二层 真的打呀第三层 并肩作战,时间,说爱你不容易第四层 状态,你在哪里第五层 时间,还是时间第六层 丰富你的视界第七层 我们说好的第八层 别争了,让我来分配吧第九层 穿着操作系统去裸奔第十层 无招胜有招第一层,我来了。处在这一层的典型是可以用C语言写简... 2023-06-13 单片机单片机程序单片机基础知识文章基础知识
单片机程序总跑飞?小技巧帮你忙 单片机程序死机,跑飞了可以从以下几个方面查找原因:1. 意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象。2. 中断变量处理不妥。若定义某些会在中断中修改的全局变量,这时要注意两个问题:首先为了防止编译器优化中断变量,要在这些变... 2023-06-13 单片机程序单片机基础知识单片机文章基础知识
单片机程序开发时,初级工程师常犯的一个错误 这篇文章我不是想说编程的规范性的东西,如果你想让自己的程序文件最起码直观的看起来美观、可读性强,推荐找华为的“C语言编程规范”。我只想说一说当我们的单片机遇到多个模块的数据需要处理,类似于“多任务”时我们应该怎么办?背景是这样的,去年9月份开... 2023-06-13 单片机程序产品设计多任务电子工程师文章单片机基础知识
单片机程序死机跑飞的原因分析 单片机程序死机,跑飞了可以从以下几个方面查找原因:1. 意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象2. 中断变量处理不妥。若定义某些会在中断中修改的全局变量,这时要注意两个问题:首先为了防止编译器优化中断变量,要在这些变量... 2023-06-13 单片机程序死机跑飞中断死循环溢出文章单片机其他
一个按键的多次击键组合判别技巧 如果按键闭合时间500MS,判断为一次长击(1); 两次击键时间间隔应<700MS,如果按键释放后700MS内无键按下,则结束读键。读键完毕返回一个键号值KEY_NUM。其意义如下:KEY_NUM 意义00000000 无键按下过00000001 无意义00000010 单次短击00000011 单次长击00000100 短击 + 短击000... 2023-06-13 按键多次击键组合判别技巧51单片机单片机程序文章单片机
初级硬件工程师如何开发自己的单片机程序 背景是这样的,去年9月份开始安排一个工程师开始做电动汽车交流充电桩,机械设计部分由公司机械结构部门负责。充电桩的电子部分总体上分为X个部分(用到的资源),电阻触摸屏(RS232),M1卡读写(RS232),电能计量表(RS485),语音提示(SPI),电力开关(继电器IO),通讯接口(RS485、CAN)。工程师做的过程非常... 2023-06-13 初级硬件工程师单片机程序程序开发程序设计文章软件开发
C语言与汇编语言的区别 其实,C语言与汇编语言的区别一直是程序员们津津乐道的话题。如果你问一个程序员这样的问题,他也许会这么回答你:“C语言可读性好,代码便于维护,便于开发;汇编语言编写的程序不容易看懂,可维护性不好,但是执行效率高。”这样回答是没有错的,但只是一个概括,不够深入。比... 2023-06-13 C语言汇编语言单片机程序单片机文章基础课C语言基础
用函数指针替代Switch/Case语句的程序设计方法 引言在单片机程序中,诸如键盘按键扫描、菜单处理等多种逻辑功能,在代码上常采用Switch/Case语句的实现方式。Switch/Case语句是一种简单、初级的逻辑表达式,当代码较为复杂时,不利于程序的功能调试和逻辑修改[1],程序的可扩充性和可移植性都受到影响。为了在单片机常用的结构... 2023-06-13 单片机程序SwitchCase函数指针文章软件开发程序设计
如何做一个单片机程序通用模版 而我,目前是渐渐地把它用在我自己的一个个人项目,一个用stm8的项目上,实际上,对这个模板的认识,最初只是有一种模糊的看法,渐渐的渐渐的,理论越来越清晰,但是,还需要在实际操作中得到完善和补充——比如之前对于io口的抽象,我一直简单的以为一个宏定义就可以解决,但如果不... 2023-06-13 固件库单片机程序开发文章单片机其他