第一次调4线的LCD1602,比较困难,或者因为延迟不对,或者因为命令错误,我足足用了一天时间,搞定了4线的1602编程实现。这里提供51单片机和LPC23XX系列单片机的程序。51的程序是我上网找的,可以参考里
/*----------------------------------------------------------------*File Name: stc_AD.c -*Description:A/D转换程序*Project: -*MCU type: STC12C5410AD - -*Company: WY -*Compiler: KEIL C51 -*D
//液晶屏为JM12864或FYD12864(带字库),我用这两种型号的屏没问题, 4行*8列汉字=32 串行通信 接/口P1.5--P1.7,可根据你的电路修改相应的接口。#include #include #define uchar unsigned charvoidL
提起LABVIEW,就不能不涉及到数据采集和控制。曾经在网上辩论过LV是不是通用编程语言,NI的创始人的一篇文章的标题就是“LV是通用语言吗”,这的确很难说,说它是通用语言,因为它的确具备了通用语言的
DAC0832
#include #include sfr P1_ADC_EN = 0x97; //A/D转换功能允许寄存器sfr ADC_CONTR = 0xC5; //A/D转换控制寄存器sfr ADC_DATA = 0xC6; //A/D转换结果寄存器sfr P1M0=0x91;sfr P1M1=0x92; #define uchar
#include sfr ADC_CONTR=0xC5;/*A/D转换寄存器*/sfr ADC_DATA=0xC6;/*A/D 转换结果寄存器, 为10 位 A/D 转换结果的高8 位*/sfr ADC_LOW2=0x0BE;/*A/D 转换结果寄存器, 低2 位有效, 为10 位 A/D 转换结果
#include //定义的系统头文件和全局变量#include #define uchar unsigned char#define uint unsigned int#define DogReset() WDT_CONTR=0x35// T1 定时 0.1ms.作为系统计时用,#definevT01ms2#definevT
stc单片机具有在应用编程,调试起来比较方便;带有10位AD;内部eeprom;可在1T/机器周期下工作,速度是传统51单片机的12倍;下面是我写的AD和EEPROM的驱动C代码:/*----------------------------------
设计思路:用定时器中断产生最小时间单位T0,每m个T0组成一个子周期T10,其中前n个T0为LED导通时间,即Ton=n*T0,则Toff=(m-n)*T0;每X个T10组成一个母周期T20,其中前y个T10为有效控制时间,后续的(x-y
引 言 MCS-51单片机的中断响应延迟时间,取决于其它中断服务程序是否在进行,或取决于正在执行的是什么样的指令。单中断系统中的中断响应时间为3~8个机器周期[1]。无论是哪一种原因引起的误差,在精
1 前言单片机内部一般有若干个定时器。如8051单片机内部有定时器0和定时器1。在定时器计数溢出时,便向CPU发出中断请求。当CPU正在执行某指令或某中断服务程序时,它响应定时器溢出中断往
1.实验任务 如图4.1.1所示:在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒。2.电路原理图 图4.1.13.系统板
1.实验任务 如图4.2.1所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。2.电路原理图 图4.2.
1.实验任务 做单一灯的左移右移,硬件电路如图4.4.1所示,八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅