- 博客(10)
- 收藏
- 关注
转载 2021-03-20
STM32例子代码中会有像这样的代码 static __IO uint32_t TimingDelay; 这里边的__IO修饰符不好理解,单从字面可以看出是为IO相关,查其标准库可以得知这个__IO原来是在Core_cm3.h中被重定义,其实就是volatile,句子如下/* IO definitions (access restrictions to peripheral registers) /#ifdef __cplusplus#define __I volatile
2021-03-20 21:32:09 130
原创 2021-03-19
HAL库外部中断配置相较与标准库,利用cubmx生成HAL库的外部中断配置就方便了许多。外部中断的配置流程大体可分为:定义外部中断结构体清除对应外部中断线中断IO配置根据引脚设定外部中断线设置中断模式设置触发方式中断线使能中断结构体初始化定义NVIC结构体选择中断优先级组定义中断IO对应的通道定义响应优先级定义抢占优先级中断通道使能初始化NVIC结构体定义中断服务子函数void EXTI0_IRQHander(void){if(……){……清除中断标志位}
2021-03-19 15:29:57 170
原创 2021-03-13
问题记录贴2021.3.13迷惑问题,自定义一个led初始化时钟LED_GPIO_Init();板子上可以识别,然后把里面所有命名都换成LED_GPIOInit();,发现RGB中绿灯无法点亮,进DEBUG看流程调用函数的过程和为换名字前一样,编译器不报错无警告,换回来就好了,人傻了,自定义函数不是直接可以随便命名吗,名字不一样但本质还是调用其中的库函数,难道我命名和库函数里面的命名重复了?可编译器也没报错,是真的离谱...
2021-03-13 22:46:18 127
原创 2021-03-12
MDK5找不出头文件详细描述:在学习HAL库过程中,配置GPIO,发现使用全局搜索找不到GPIOTypeDef的头文件解决方法:检查后发现自己的头文件路径少了一个,User中的头文件路径添加后,便可以成功找到了...
2021-03-12 22:55:20 143
原创 2021-03-10
利用stm32cubMx生成的函数时下载遇到的问题需要注意的是在cubMx配置的时候,需要将Sys中选为series-wire,否则在烧写的过程中只能烧写一次,然后SRAM会被锁死。这时候除了去设置Boot以外,可以试着在魔术棒中Debug-CMSIS DAP Debug-setting中将connect设置成Under Reset,将Reset设置成VECTRESET,然后下载时先按住板子上的RESET键,在keil上按下LOAD键以后将RESET键松开,这样就可以可以进行再次下载了,不过首先还是应该选
2021-03-10 18:20:33 74
原创 2021-01-25
在用keil5写库的时候遇到的几个问题1.error: #7: unrecognized token无法识别的标识,原因是因为输入括号时,前面的是英文后面莫名其妙的变成了中文2.main.c(5): error: #137: expression must be a modifiable lvalue表达必须是可修改的左值。原因是在宏定义将地址强制类型转换为指针时后面的地址未加括号,导致编译器默认指针进行加减...
2021-01-25 22:06:26 1915
原创 在用51单片机定时器模式1时的整个流程
#including <reg52.h>#define uint unsigned intvoid main(){EA = 1;//开总中断ET0 = 1;//打开time0的溢出中断TMOD = 0X01;//选择模式1,16位定时器TH0 = 0XB3;TL0 = 0X84;//50毫秒TR0 = 1;//定时器开始计时while(1);//让程序停在这里}...
2020-02-20 16:13:16 1739
原创 用51单片机实现人行交通灯的控制
1. 初始状态红灯点亮;2. 按下按键后,保持红灯点亮的状态下,数码管从10s开始倒计时,当倒计时到0时,红灯熄灭,绿灯点亮,行人可以通行;3. 在绿灯点亮的状态下,进行15s倒计时,倒计时到3s时,绿灯以1s为周期进行闪烁,提醒行人绿灯即将结束,倒计时到0时,红灯点亮,数码管倒计时结束。
2020-02-20 15:47:48 1820 1
翻译 KEIL51调试时的一些错误(转载,如有侵权,立即删除)
(1)提示无M51文件编译时候提示:F:…\XX.M51File has been changed outside the editor, reload ?解决方法:重新生成项目,产生STARTUP.A51即可。(2)L15重复调用***WARNING L15: MULTIPLE CALL TO SEGMENTSEGMENT: ?PR?SPI_RECEIVE_WORD?D_SPI...
2020-02-17 21:23:07 11828 2
原创 stc89c52关于stc-isp烧录时的一个小问题
正在重新握手 … 成功 [0.094"]当前的波特率: 115200正在擦除目标区域 …下载失败 ! (6.86)(2020-02-16 15:15:34)请确定是否有新版软件,请及时更新 !刚开始学51,今天发现了这个问题,一直下载失败。后面试了几次,发现只要去掉跳线就正常了,具体原因找到了补充...
2020-02-16 15:30:29 2630 4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人