随笔分类 - 单片机课堂项目代码
摘要:1 #include //头文件 2 #define uchar unsigned char //宏定义无符号字符型 3 #define uint unsigned int //宏定义无符号整型 4 code uchar seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0...
阅读全文
摘要:#include #include #define uchar unsigned char //宏定义无符号字符型 #define uint unsigned int //宏定义无符号整型 sbit ST=P3^0; //A/D启动转换信号 sbit OE=P3^1; //数据输出允许信号 sbit EOC=P3^2; //A/...
阅读全文
摘要:#include <reg52.h> #define uchar unsigned char sbit LED_RED = P2^0; sbit LED_GREEN = P2^1; sbit LED_BLUE = P2^2; //要显示的颜色值 uchar COLOR_RED = 0xff; uch
阅读全文
摘要:28BYJ-48步进电机:1、步进电机是一种将电脉冲转化为角位移的执行机构。 2、通俗一点讲:当步进驱动器接收到 一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。 3、通过控制脉冲个数来控制角位移量,从而达到准确定位的目的; 4、通过控制脉冲频率来控制电机转动的速度和加速度
阅读全文
摘要:单片机中断源 一、一般而言,MCS-51单片机有5个中断源,分别是: 1)、用到外部中断时: 2)、用到定时/计数器中断时 3)、用到串口中断时 EX1 = 1;//外部中断1分开关 IT1 = 1;//触发方式:下降沿 PX1 = 1;//设置为高优先级 //步骤一:波特率配置,由定时器1的益处率
阅读全文
摘要:/* 定时器准确定时八位时钟 */ #include #include #define uchar unsigned char #define uint unsigned int uchar code duanca[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; uch...
阅读全文
摘要:/* 八位时钟 */ #include #include #define uchar unsigned char #define uint unsigned int uchar code duanca[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; uchar code...
阅读全文
摘要:/* 串口发送端(还需要接受端) 程序说明:每按一下按钮,P2.0端口的LED闪烁一次,数码管加一,当加到 9时,再按一下就重复为零 知识点:外部中断1 定时器1 寄存器:中断允许寄存器IE,定时器控制寄存器TCON,定时器方式寄存器TMOD,串口控制寄存器SCON */ #include unsigned i...
阅读全文
摘要:/* 效果说明: 定时器中断:通过单片机计数使程序执行 一秒中断一次,中断发生时高四位亮一秒,中断发生后又回到主程序 */ #include #include unsigned int i; void delay()//延时子函数 { i=1000000; while(i--);//执行一次大概要一毫秒 这里给它一秒就是中断发生时高四位亮一秒 ...
阅读全文
摘要:/* 效果说明: 计数器中断:通过外设计数是程序执行 按一下中断一次,中断发生时高四位亮,中断发生后又回到主程序 */ #include #include unsigned int i; void delay()//延时子函数 { i=50000; while(i--); } //unsigned char TCOM; //中断初始化 v...
阅读全文
摘要:/* 外部中断0中断,效果是低四位点亮,当中断发生时高四位点亮, 中断结束后程序回到主程序中继续点亮低四位点亮 */ #include #include //要中断就要设置一些参数 void zhongduan1() { EX0 = 1;//中断允许开关 IT0 = 0;//下降沿触发方式 EA = 1;//总开关 } void main(void)//主函数 { ...
阅读全文
摘要:1602是字符型液晶,内含128个ASCLL字符型的字符库,故可以显示ASCLL字符,而不能显示汉字。 1602可以显示两行信息,每行16个字符,5V电源供电,带有背光。 知识点: 附带无线标号: 点击LBL,在要用无线连接的两端地方双击,附上相同的名称即可,
阅读全文
摘要:外部中断0或1,实质是一样的,仅改变EX、IT为0或为1。Q;那么问题来了:为什么要有两个极相似的外部中断0或1呢?A:当外部有两个中断时,如果只有一个外部中断,那么一个中断处理外面的两个中断时,其CPU处理就不够精确了,所以得开通多一个处理外部中断的通道。Q:当有三个外部中断的时候呢?A;这就是单片机的局限。哈哈~~不过飞控有很多中断 #include /* *外部中断0 */ sbit L...
阅读全文
摘要://按键加一或减一 #include #include int duan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//共阴数码管0到9数字的十六进制 sbit K1 = P1^0; sbit K2 = P1^7; char num = 0; //含参数延时函数 void delay(unsigned int i){ ...
阅读全文
摘要:整体思想:把汉化包里的文件替换软件的英文的软件 右键打开文件安装的位置,找到Translations文件夹,打开它等待被替换。 打开这个找到Translations文件夹,把下面的文件全部复制替换上面的同文件夹里的文件。 注意:汉化后要重新打开文件。
阅读全文
摘要:#include "reg52.h" #include "digital_pile.h" void main(){ //P0 = 0x00; //P2 = 0xff; static_pile(6);//静态显示函数,主函数调用子函数 //digital_pile();// 动态显示函数 } ...
阅读全文
摘要:https://wenku.baidu.com/view/7f181fb46137ee06eff9188c.html
阅读全文
摘要:/* 标题:蜂鸣器的使用 电路:P1.0口接P11 */ #include "sys.h"//包含延时函数头文件 #include #include "beep1.h" sbit beez = P2^1;//位声明,P2端口的第一位为蜂鸣器所用 void beep1() //非空函数+函数名 { while(1) //while死循环 { ...
阅读全文
摘要:/* .c文件 标题: 系统常用工具函数 */ void delay(){ int i = 10000; while(i--); } void delays(int d){ while(d--); } //---------------.h文件--------------------- #ifndef _SYS_H_ #define _SYS_H_ /...
阅读全文
摘要:/* ------------主函数---------------- */ #include "xxx.h"//xxx为函数名 void main() { xxx();//同上 这里是多文件调用 }
阅读全文