51单片机
Lee Neo
稚晖的小迷弟。
展开
-
DS1302时钟与可调时钟
main()#include <REGX52.H>#include "LCD1602.h"#include "DS1302.h"void main(){ LCD_Init(); LCD_ShowString(1,1,"20 - -");//静态字符初始化显示 LCD_ShowString(2,1," : : "); DS1302_Init(); DS1302_SetTime(); while(1){ DS1302_ReadTime...原创 2021-10-21 23:14:36 · 426 阅读 · 0 评论 -
串口通信——串口接收数据,发送数据
十六进制 HEX /hexadecimal /ˌheksəˈdesɪml/十进制 DEC /decimalism/'desiməlizəm/二进制 BIN /binary/ˈbaɪnəri/八进制 OCT /octonary /ˈɒktənəri/波特率计算:串口向电脑发送数据:#include <REGX52.H>void...原创 2021-10-18 22:45:06 · 8939 阅读 · 1 评论 -
定时器与中断2——秒表
秒表 StopWatch演示#include <REGX52.H>#include "LCD1602.h"void Timer0Init();unsigned char Ms=0,Sec=40,Min=59,Hour=23;main(){ LCD_Init(); Timer0Init(); LCD_ShowString(1,1,"StopWatch:"); LCD_ShowString(2,3,": : ."); while(1){ LCD_Sho...原创 2021-10-16 23:00:12 · 571 阅读 · 0 评论 -
定时器与中断1——流水灯小项目
图一main()#include <REGX52.H>#include <INTRINS.H>#include "timer0.h"unsigned char key();/** * @brief 流水灯半秒流动;按下K1,流水灯变向 * @param * @retval */unsigned char KeyNum,LEDMode;main(){ P2=0xFE; Timer0Init();//中断初始化 wh...原创 2021-10-16 17:45:59 · 925 阅读 · 0 评论 -
矩阵键盘-数字锁;
while一定要加break;等跳出循环;特别是单片机,因为有时根本发现不了进入了死循环;矩阵密码锁代码:#include <REGX52.H>#include "delay.h"/** * @brief 矩阵键盘读取按键值 * @param 无 * @retval 按下的键码值 按下按键时,程序会一直卡在这,松手的瞬间返回值; */unsigned char MatrixKey(){ unsigned char KeyNum=0;...原创 2021-10-16 01:12:19 · 315 阅读 · 0 评论 -
“LCD1602调试工具”
#include <REGX52.H>//引脚配置:sbit LCD_RS=P2^6;sbit LCD_RW=P2^5;sbit LCD_EN=P2^7;#define LCD_DataPort P0//函数定义:/** * @brief LCD1602延时函数,12MHz调用可延时1ms * @param 无 * @retval 无 */void LCD_Delay(){ unsigned char i, j; i = 2; j = 239;.原创 2021-10-14 23:23:06 · 369 阅读 · 0 评论 -
数码管的动态、静态显示
译码器:用于将左边的三位转换为右边只有0的二进制;数码管为共阴极;数码管显示:#include <REGX52.H>unsigned int NixieTable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管数字码void Delayms(unsigned int time)//延时函数 ms{ unsigned char i,j; while(time--) {...原创 2021-10-14 22:14:00 · 311 阅读 · 0 评论 -
51单片机
电子计数:103=10 00=1k欧姆(即最后一个数就是几个零)原创 2021-10-14 19:03:15 · 93 阅读 · 0 评论