感谢楼主分享 楼主辛苦了
萝莉万岁!
更了更了,催!
开动了!
出了,祝贺!
keil软件要破解吗?还是直接调用库?大白菜不懂啊!
没有牛币下不了!每个文件-10牛币。
yrj 发表于 2017-3-9 08:59
keil软件要破解吗?还是直接调用库?大白菜不懂啊!
keil要破解。包含了头文件才能调用。
具体使用方法以后单片机课堂会讲
强烈支持,终于更新了。今天回家就试试。
一个附件要10牛币啊,下完三个附件,都快成穷鬼了
顶,支持,学习中
厉害了,我之前也想写过,但能力有限,写过一些但失败了
本帖最后由 我爱萝丽爱萝丽 于 2017-3-19 21:08 编辑
库结构和规划:
库主要由全局定义和封装好的函数构成。
全局定义篇:
引脚定义:
单片机所有引脚在库中已经全部定义好,如P3.5引脚,库定义为P35。
示例: P35=0;
引脚二次定义:
引脚作特殊使用时,引脚还会被二次定义。
比如改为自己习惯的定义: #define P35 LED1,之后对LED1操作等效P35
比如更改库默认的引脚: #define P35 LCD1602_RS,这样屏幕接在哪个引脚上都可以使用
库函数篇:
//软件延时N微妙 最大255us
void Delay_us(u8 n);
//示例 Delay_us(255); //延时
//软件延时N毫秒 最大65535ms
void Delay_ms(u16 n);
//示例 Delay_ms(500);
//引脚输出模式设置
void PinMode(u8 pin_num,u8 mode);
//示例 PinMode(pin5,1);
//软件模拟串口发送字符
void Soft_putc(u8 D);
//示例 Soft_puts('A'); Soft_puts(0x55);
//软件模拟串口发送字符串
void Soft_puts(u8 code *s);
//示例 Soft_puts("Hallow\n");
//定时器0时间设置
void Timer0_init(u16 us);
//示例 Timer0_init(10000);
//定时器2时间设置
void Timer2_init(u16 us);
//示例 Timer0_init(500);
//EEPROM扇区擦除 (按扇区操作,一个扇区0~511字节)
void EEPROM_erase(u8 sector);
//示例 EEPROM_erase(1); //擦除1号扇区
//EEPROM单字节读取
u8 EEPROM_read(u8 sector,u16 address);
//示例 dat=EEPROM_read(0,100); //读取储存在0号扇区、第100个字节的数据
//EEPROM单字节写入
void EEPROM_write(u8 sector,u16 address,u8 byte);
//示例 EEPROM_write(1,500,0xAA); //将0xAA存放在1号扇区、第500个字节处
功能性函数:
//按键检测
u8 KeyScan(u8 pin_num);
//示例 if(KeyScan(P33)==1);
//软件延时法测量脉冲宽度
u16 Soft_measure(u8 mode);
//示例 time=Soft_measure(High); //测量高电平宽度 Soft_measure(Low);
显示屏驱动函数:
//
//
Bumsei 发表于 2017-3-9 13:56
一个附件要10牛币啊,下完三个附件,都快成穷鬼了
哈哈,我也不知道为啥要10牛B,下次合并为一个下载包给大家省钱~~
要牛币啊!啊!啊!
我爱萝丽爱萝丽 发表于 2017-3-7 14:02
STC库V0.1:
命名规则:单片机型号+版本号
好吧,没牛币下载了。。。。能不能放到云盘上去。。。
此乃是单片机爱好者的福音恭喜!萝莉老师辛苦,谢谢您!{:1_23:}
我爱萝丽爱萝丽 发表于 2017-3-9 12:00 static/image/common/back.gif
keil要破解。包含了头文件才能调用。
具体使用方法以后单片机课堂会讲
好的,等教程
浅雪 发表于 2017-3-9 15:43
好吧,没牛币下载了。。。。能不能放到云盘上去。。。
哈,放群里吧。有没有兴趣一起完善库?把一些常用模块的操作全部封装,以后自己用着方便别人也方便
我爱萝丽爱萝丽 发表于 2017-3-9 17:43 static/image/common/back.gif
哈,放群里吧。有没有兴趣一起完善库?把一些常用模块的操作全部封装,以后自己用着方便别人也方便 ...
版主和浅雪合作将产量大增!哈哈!