随笔分类 -  单片机

摘要:AUXR.0:S1BRS,如果为1那么串口1的波特率发生器为独立波特率发生器,否则为定时器1 AUXR.1:EXTRAM,为1则可以使用内部扩展RAM AUXR.2:BRTx12,为1则独立波特率发生器不分频,否则12分频。 AUXR.3:S2SMOD,为1串口2波特率加倍,否则不加倍 AUXR.4 阅读全文
posted @ 2020-10-12 03:31 极客先锋 阅读(1516) 评论(0) 推荐(0) 编辑
摘要:亚博智能mini51板: #ifndef __BSP__H__ #define __BSP__H__ // 数据定义 enum BOOL{false,true}; #define bool enum BOOL; #define uchar unsigned char #define uint uns 阅读全文
posted @ 2020-10-12 00:05 极客先锋 阅读(829) 评论(0) 推荐(0) 编辑
摘要:感觉stc89c51的库不好用,自己写了个:stc89c52_register.h #ifndef __STC89C52_REGISTER_H_ #define __STC89C52_REGISTER_H_ /* Above is STC additional SFR */ // /* Regist 阅读全文
posted @ 2020-10-10 22:47 极客先锋 阅读(693) 评论(0) 推荐(0) 编辑
摘要:写了一个方便的头文件: 1 // 作者博客:https://www.cnblogs.com/jikexianfeng/ 2 // 3 // 头文件功能简介:编写了一个驱动八段4位数码管的头文件: 4 // 所有函数都是按位操作的: 5 // led_Digital_Tube_Positioning_ 阅读全文
posted @ 2020-09-09 00:26 极客先锋 阅读(621) 评论(0) 推荐(0) 编辑
摘要:写了一个方法比较全面的头文件: 1 // 作者博客:https://www.cnblogs.com/jikexianfeng/ 2 // 3 // 头文件功能简介:编写了一个驱动led灯的头文件: 4 // 所有函数都是按位操作的: 5 // set_xxx_xxx_xxxx_xxxx_xxx(co 阅读全文
posted @ 2020-09-08 01:24 极客先锋 阅读(304) 评论(0) 推荐(0) 编辑
摘要:基于stc89c52的看门狗,代码如下: main.c bsp_wdt.h bsp_wdt.c data.h data.c stc89c5x_Quick_configuration.h(自定义头文件) 阅读全文
posted @ 2019-10-17 21:12 极客先锋 阅读(1299) 评论(0) 推荐(0) 编辑
摘要:stm8 时钟切换; 阅读全文
posted @ 2019-10-07 19:54 极客先锋 阅读(677) 评论(0) 推荐(0) 编辑
摘要:前端时间要用按键,搞了个状态机(如图): main.c data.h data.c interrupt.h interrupt.c button.h button.c 工程文件:51内核按键状态机.rar 阅读全文
posted @ 2019-09-16 14:09 极客先锋 阅读(1514) 评论(0) 推荐(1) 编辑
摘要:N76e003切换到外部时钟的资料很少(因为N76e003的片子是不支持无源晶振的,有源晶振的成本又很高,所以网上很少有对N76e003的介绍)。有图有真相: 代码如下: main.c 阅读全文
posted @ 2019-06-14 22:17 极客先锋 阅读(3148) 评论(0) 推荐(0) 编辑
摘要:N76e003单片机内部没有EEPROM,但是可以使用 APROM模拟EEPROM功能,代码如下: eeprom.h eeprom.c 阅读全文
posted @ 2019-04-16 00:13 极客先锋 阅读(1961) 评论(0) 推荐(0) 编辑
摘要:最近又看了一下关于stc单片机的知识,感觉在使用中EEPROM是个经常用到的东西,特地学习了一下,给大家分享一下心得,如有不足,多多包涵,废话不多说,一图解千言,先上图: /* 分界线 */ main_eepprom.c Eeprom.h Eeprom.c 本代码支持只stc89/90系列自带EEP 阅读全文
posted @ 2019-04-08 17:54 极客先锋 阅读(1943) 评论(0) 推荐(0) 编辑
摘要:KEIL编译错误信息表 错误代码及错误信息 错误释义 error 1: Out of memory 内存溢出 error 2: Identifier expected 缺标识符 error 3: Unknown identifier 未定义的标识符 error 4: Duplicate identi 阅读全文
posted @ 2019-02-10 23:41 极客先锋 阅读(1844) 评论(0) 推荐(2) 编辑
摘要:一般编译器的堆栈用于保存局部变量、函数的参数、函数的返回值、中断上下文信息等。但Keil对局部变量、函数参数预先分配空间(放在静态全局变量区),Keil的堆栈只是用于保存函数嵌套调用的PC、中断上下文信息。 从主程序进入中断需要入栈字节数:13+PC=15 Byte(ACC,PSW,B,DPH,DP 阅读全文
posted @ 2019-01-27 20:58 极客先锋 阅读(1186) 评论(0) 推荐(0) 编辑
摘要:51单片机的仿真栈(又叫模拟栈、或者可重入栈)。 首先来看,51的系统栈(又叫系统栈,或者硬件栈),就是SP所指向的栈,他是一个满增栈(注释1),位于片内RAM的128 bytes之中,上电之后系统堆栈指针SP的初值等于多少呢?这个要从51的启动文件来分析,启动文件中有这样的汇编代码: ?STACK 阅读全文
posted @ 2019-01-27 20:56 极客先锋 阅读(1167) 评论(0) 推荐(0) 编辑
摘要:RSEG是段选择指令,要想明白它的意思就要了解段的意思。段是程序代码或数据对象的存储单位。程序代码放到代码段,数据对象放到数据段。段分两种,一是绝对段,一是再定位段。绝对段在汇编语言中指定,在用L51联接的时候,地址不会改变。用于如访问一个固定存储器的i/o,或提供中断向量的入口地址。而再定位段的地 阅读全文
posted @ 2019-01-27 01:32 极客先锋 阅读(1327) 评论(0) 推荐(0) 编辑
摘要:21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址 阅读全文
posted @ 2019-01-26 16:13 极客先锋 阅读(1909) 评论(0) 推荐(2) 编辑
摘要:STARTUP.A51原始文件: 翻译后的STARTUP.A51: 阅读全文
posted @ 2019-01-26 16:03 极客先锋 阅读(2485) 评论(0) 推荐(1) 编辑
摘要:1、首先看看它名字真正的含义: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS:意为IC之间总线) UART(Universal Asynchronous Receiver Transmitter:通用异步收发器) USART:通用 阅读全文
posted @ 2018-11-03 21:12 极客先锋 阅读(2424) 评论(0) 推荐(0) 编辑
摘要:本文是续 单片机成长之路(51基础篇) - 009 关于sdcc的多文件编译范例(一)编写的。 在实际的工作中,单片机的头文件和功能函数不可能同全部放在同一个文件夹下面,我们把单片机成长之路(51基础篇) - 009 关于sdcc的多文件编译范例的代码进行重新拆分,然后把头文件归类到一个文件夹(in 阅读全文
posted @ 2018-09-06 00:14 极客先锋 阅读(1695) 评论(0) 推荐(0) 编辑
摘要:T2CON:定时器控制寄存器 寄存器地址0C8H,位寻址0C8H~0CFH。 位地址 CF CE CD CC CB CA C9 C8 位符号 TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 TF2:T2溢出标记 当T2溢出时TF2=1,TD2只能用软件清除 当RCL 阅读全文
posted @ 2018-08-23 04:41 极客先锋 阅读(1561) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示