推荐阅读最新更新时间:2024-03-16 15:40
单片机普通I/O模拟串口
#i nclude reg52.h sfr16 DPTR = 0x82; typedef unsigned char INT8U; typedef unsigned int INT16U; #define YES 1 #define NO 0 //定义使用哪个定时器, 只可定义一个 //#define TIMER_0 #define TIMER_1 //定义串口收、发送管脚。 sbit rs_TXD = P2^1; sbit rs_RXD = P2^0; //根据定时器确定参数 #ifdef TIMER_0 #define TMOD_AND_WORD 0xF0;
[单片机]
PIC单片机读内部EEPROM的读写操作子程序
//***************************************************************************** //***************************************************************************** // pic16f917 //***************************************************************************** unsigned char read_eeprom(unsigned char); void write_eeprom(uns
[单片机]
基于PIC16F874单片机的可编程电源的设计与应用
随着各种电器和仪表设备的日渐丰富,对电源应用的灵活性提出了更高的要求。设计一款使用灵活、方便且价格相对便宜的通用电源,正越来越成为市场所需。现代单片机正朝着处理速度越来越快,外设资源越来越丰富,价格越来越便宜的方向发展,将单片机融入电源的设计中可以极大地提升电源的性能和灵活性。本文介绍了一种单片机加PWM芯片的开关电源设计方法,既可以保留PWM芯片带来的稳定工作性能,又可以利用单片机的控制能力提供各种人机交互和通信接口。笔者设计的电源作为通用电源使用,可以提供灵活可编程的电压电流输出,另外还可以设置成铅酸电池充电器的模式,具有广阔的应用前景。 1 系统功能 通过对电源的编程,可以方便地实现图1所示的电压输出波形。其中
[单片机]
基于AVR单片机及专用MODEM芯片的MTU、RTU无线电遥测系统设计
一、前 言 基于AVR单片机及专用MODEM芯片的MTU(Master Terminal Unit中心调度机)、RTU无线电遥测系统。 分散地分布在全市的管网监测点上的远端RTU(系统可带256个RTU)采集数据,进行数据处理后通过无线电台向中心调度端发送数据,中心调度端接收到数据后进行数据处理,数据存储,并送给模拟屏显示。 二、设计思想 原有系统的使用中,主要存在以下几个问题:1. 无线通信波特率低(300bps),误码率高,巡测速度慢,最多带32个RTU终端;2. 当某一远程RTU端的无线电台一直处于长时间误发射状态时(简称“长发” )一直占用系统频点,由于系统共用一组无线电频点,这将使系统其他所有电台
[单片机]
单片机数据采集常用算法
u8 TPAD_Init() { u16 buf ; u16 temp; u8 j,i; for(i=0;i 10;i++)//10次采样 { buf =TPAD_Get_Val(); delay_ms(10); } for(i=0;i 9;i++)//升序排列 { for(j=i+1;j 10;j++) { if(buf buf )// { temp=buf ; buf =buf ; buf =temp; } } } temp=0; for(i=2;i 8;i++)temp+=buf ;// ¼ 8 &
[单片机]
80C51单片机内部定时器和计数器的结构及原理解析
80C51单片机内部设有两个16位的可编程定时器/计数器。可编程的意思是指其功能(如工作方式、定时时间、量程、启动方式等)均可由指令来确定和改变。在定时器/计数器中除了有两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。 定时器/计数器的结构: 图片1 从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1构成。其访问地址依次为8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个8位的定时器方式寄存器TMOD和一个8位的定时控制寄存器TCON。这些寄存器之间是通过
[单片机]
ATmega8单片机的天然气发动机电控系统设计
1 燃料供给系统 对原机的改造主要是燃料供应及喷射系统的改造,用一套完整的天然气供给系统和电控系统来实现改造目的。所使用的天然气是由高压气瓶(CNG)提供的压缩天然气,出口压力达到20 MPa。图1所示为供气系统示意图。该设计实现了高压天然气的可靠存储和压力转换,并可对供气压力进行实时监测。 2 电控单元 电控单元选用Atmel公司的AVR单片机,利用单片机C语言进行程序开发,并且采用了多片式ECU设计。 (1)多片式ECL多片式ECU是指在一个电控单元ECU中使用多个单片机(MCU)。各个MCU分别承担不同的工作内容。图2所示为多片式ECU的结构简图。考虑到控制系统的性能和特点,对3个MCU的任务做出如下分配:
[单片机]
51单片机ADC0832电压测量液晶1602显示的C程序与proteus仿真
很早对AD转换感兴趣,也想自己业余做块单片机开发板,让广大的电子设计爱好者学习使用单片机。 今天通过搜索,整理了proteus 7可以仿真通过的基于51单片机+ADC0832电压采集并通过液晶1602显示电压的C程序及电路连接图,希望对大家有所帮助。 程序是谁写的谁修改的并不主要,主要的是学会并使用单片机AD转换,这才是王道。 电路连接图如下: C程序如下: #include reg52.h #include intrins.h #include math.h /**********************************8/ /**********LCD1602接口程序*********
[单片机]