- 博客(20)
- 资源 (5)
- 收藏
- 关注
原创 数模
#include<reg51.h>#define u8 unsigned char#define u16 unsigned intsbit wr=P3^6;sbit rd=P3^2;void init_DA0832()//DA芯片准备函数{ rd=0; wr=0;}void delay(u16 xms){ u16 i,k; for(i=0;i<xms;i+
2017-12-28 00:30:19 362
原创 可调亮度的灯 PCF8591
可调亮度的灯#include<reg52.h> //包含单片机寄存器的头文件#include <intrins.h> #define AddWr 0x90 //PCF8591 地址// 变量定义unsigned char AD_CHANNEL=0;unsigned char D[32];sbit scl=P2^0; //I2C 时钟 sbit sda=P2^
2017-12-28 00:26:55 2398 2
原创 篮球计分牌
#include <reg51.h>#include <intrins.h>#include <string.h>#include <stdio.h>#define uint unsigned int#define uch8 unsigned charint a,b,c,d,e,f;sbit DX=P2^0;sbit WX=P2^1;sbit leftAdd=P3^0;sbit
2017-12-28 00:21:33 767 1
原创 随机数
#include<reg51.h>#include<stdlib.h> //随机数函数所在头文件#include<stdio.h>sbit LCDEN=P3^4;sbit RS=P3^5;sbit RW=P3^6;sbit BF=P0^7;unsigned char flag=0;//启动/停止unsigned int c=0;//随机种子数unsigned char code c
2017-12-28 00:16:29 237
原创 密码锁
main.c#include <reg51.h>#include <intrins.h>#include <string.h>#include <stdio.h>#include "kenscan.h"#include "config.h"#include "anjian.h"sbit DX=P2^0;sbit WX=P2^1;sbit BEEP=P2^3;sbit green=P
2017-12-28 00:08:55 752
原创 keypad 按键显示
main.c#include "config.h"//矩阵按键扫描头文件#include "anjian.h"//1602显示头文件#include "1602.h"#include "music.h"sbit LED=P1^0;u8 code key[]={'0','1','2','3','4','5','6','7','8','9','*','#'};//3*4手机拨号键盘号码u8
2017-12-27 18:45:27 11079 2
原创 单片机双机通信
单工通信主机控制从机。主机工作方式/********************初始化串口 bps为波特率**********************************/void uart_init(unsigned int bps){ unsigned char t; SCON=0x50;//(0101)工作方式一:8位异步收发,波特率可变
2017-12-27 14:21:49 24622 2
原创 单片机与PC机通信
单片机获取和管理传感器的数据,然后通过串口通信将数据发送给PC。 利用proteus仿真单片机和PC口通信时,需要用到串口调试助手和虚拟串口配置软件。 串口助手用于PC进行数据发送和接收,虚拟串口用于将PC的串口虚拟连接。 P3.0口RXD P3.1口TXD 对应接上compim的接口
2017-12-21 21:11:23 11867
原创 I2C总线
ADC0804、DAC0832、PCF8591 I2C总线有数据线SDA和时钟线SCL两条线构成通信线路。即可发送数据,也可接收数据。
2017-12-17 14:38:48 207
原创 串行通信
串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送。控制寄存器两个:特殊功能寄存器SCON和PCON。通过对串行口控制寄存器SCON和电源控制寄存器PCON的编程,可以控制串行口的工作方式和波特率。TI—发送中断标志位 TI =1,表示一帧数据发送结束。 CPU响应中断后,在中断服务程序中向SBUF写入要发送的下一帧数据。 方式0,串行发送的第8位数据结束时TI由硬件置“1”.
2017-12-10 18:47:03 1604 1
原创 单片机之显示设备
LED灯显示利用取字模软件来生成字模 取字模上设置相关选项取出字模,设置像素为8*8。如“上,\”等。unsigned char code dis1[] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//"\",阴码(1亮)、按列取字模unsigned char code dis2[] = {0x00,0x40,0x40,0x7E,0x48,
2017-12-10 17:23:53 602
原创 矩阵键盘
矩阵键盘它用8个IO口实现了16个按键的扫描检测,实现了IO口更充分的利用。 unsigned char code keycode[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77}; //矩阵键盘编码根据按键返回相应的值方法一unsigned char ke
2017-12-10 16:08:14 1081
原创 数码管
六位数码管共阴级显示(0-F)unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};例子:六位数码管从一自动计数首先是关于六位数码管的数字显示问题 段选位选接口 sbit DX=P2^0;sbit WX=P2^
2017-12-09 23:46:17 1196
原创 单片机足球补时器
点击补时时逐次累计,一次加一分钟,点击开始计时开始倒计时,倒计时完成后蜂鸣器报警。上代码include <reg51.h> //51单片机头文件include<intrins.h> //51库函数define uchar unsigned char //宏定义define uint unsigned intsbit duan = P2^6;//段选接P2.6引脚sbit wei = P
2017-12-08 19:16:34 545 1
原创 中断
中断系统主程序遇中断请求后,执行中断请求处理程序,完成后继续执行主程序。51里有5个中断源。2个优先级,可以实现二级中断的嵌套。51中断系统结构图。从上图可以看出中断优先级顺序:外部中断0、定时器中断0、外部中断1、定时器中断1、串口中断。 1. INT0外部中断0由P3.2引入,低电平或者下降沿触发。中断号0 2. INT1外部中断1由P3.3引入,低电平或者下降沿触发。中断号2 3.
2017-12-08 18:55:50 442
原创 定时器学习
MCS-51单片机定时器/计数器的简单结构图:8051单片机的两个定时器T0和T1分别都由两个特殊功能寄存器组成;T0由特殊功能寄存器TH0和TL0构成,而T1则是由TH1和TL1构成;8051单片机设计了两个8位的特殊功能寄存器来控制定时器/计数器的工作状态;这两个特殊功能寄存器分别是TMOD和TCON;它俩都在特殊功能寄存器区;定时器时间的设定在12M的晶振下,每秒(s)可产生1M(10^6
2017-12-08 18:15:56 2475
原创 独立按键
按键选择显示数字为按键设置值,当按键按下是为0,以n设定键值。 sbit key0=P2^0; void main() { unsigned char n=16;//初始时数码管不显示 while(1) { P2=0xff; //从P2口读数据之前先给P2口写1 if(key0==0)//判断按键被按下 {
2017-12-08 13:21:31 486
原创 单片机学习
小知识延时函数void delay(int t) //延时t毫秒{int i,j; for(i=0;i<=t;i++) for(j=0;j<=110;j++);}单个数码管内显示的控制数(0-F)unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,
2017-12-08 13:14:42 285
原创 文章标题
mac安装node.js下载node.js官网:https://nodejs.org/en/ 下载完成后直接按照步骤点击 安装完成后打开终端,输入 npm -v node -v 两个命令,出现版本信息,说明安装成功。
2017-12-06 19:06:22 163
转载 querystring
导入模块var querystring = require("querystring");orconst querystring = require("querystring");该模块提供四个方法querystring.parsequerystring.stringifyquerystring.escapequerystring.unescape1) querystring.parse(
2017-12-06 18:57:42 428
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人