实验程序:/*******************************led.c*********************************/#include"stm32f4xx.h"//在SYSTEM目录下可以找到,把ST官方的部分库抽取出来,组成了一个SYSTEM目录#include"sys.h"voidLED_Ini
名称:51单片机驱动蜂鸣器发声平台:Keil 4, Ly-51S学习板内容:模拟报警声,如闹钟 滴 滴 滴 滴-----------------------------------------------------*/ #include sbit SPK = P1^2; void delay_2us(unsigned char
第一阶段 是先浏览教科书里的硬件部分,大至了解单片机的硬件结构。如 ROM、RAM、地址、I/O口等,以及看一些厂家的MCU资料(Data Sheet),来加强MCU所提供各项资源的印象。 第二阶段 就是了解二进位数
DMA可以认为连接两个“地址”数据通道。DMA共享系统总线,不占用CPU,所以可以实现快速数据传输。这里以DMA连接存储器(数组)和串口(USART1->DR)为例。1 void DMA_init(void)2 {4 RCC->AHBENR|=1DR;//读外设串口数据
方式0应用 通过设置TMOD寄存器中的M1M0位00选择定时器方式0,方式0的计数位数是13位,对T0来说,TL0寄存器的低5位(高3位未用)和TH0寄存器的8位组成。TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF
DMA,全称为:DirectMemoryAccess,即直接存储器访问。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为RAM与I/O设备开辟一条直接传送数据的通路,能使CPU的效率大为提
生活上有很多东西都搭载着单片机而进行工作的,而且有相当一部分的设备、仪器、产品都是靠蓄电池来提供电源的,往往这些靠蓄电池供电的设备、仪器、产品都能够用上一大段时间。例如我们经常接触到的遥控器,假若MCU一
想搞清楚PLC与单片机有什么不同,在网上搜了许多,看得头都大了,还是一团雾水。最后把其中说到点子上的一些句子,综合起来认真分析总结,本人认为PLC与单片机的差别应该是:1.PLC是应用单片机构成的比较成熟的控制系
#includesbit P1_1 = P1^1;//定时器的初始化void delay_1ms(void){TMOD = 0x01;//采用16位计数器TH0= 0xFC;TL0= 0x18;ET0= 0;TR0= 1;//开启while(!TF0);TF0= 0;TR0 = 0;}void main(void){while(1){P1_1 = 1;delay_1m
I2C总线是Philips公司提出的一种集成电路IC器件之间相连接的总线协议,其目的是使电子系统(不只 限于单片机系统)各个IC器件之间的连线变得容易。因为使用传统的并行总线在IC器件之间连接,往往会使得IC之间连线较多
串口xmodem的移植比较简单,参考ymodem协议就行。实验环境:Linux ubuntu 9.10(来自韦东山老师光盘自带虚拟机)开发板:Jz2440(ARM9S3C2440NANDK9F2G08SDRAMK4S561632 * 2)U-Boot: u-boot-1.1.6烧写工具: OpenJt
#include"1602.h"#include"18b20.h"#include"main.h"__CONFIG(0X0B31);main(){charmsg[2][16]={"Temperature:",".C"};delay_us2(40,40);delay_us2(100,200);initial();while(1){start_convert();change
一直都是用STM32做项目中的主控芯片,在编程的时候,之前一直忽视了一个问题,那就是寄存器的位置是如何定义的,为什么用一个USART1->CR操作就能够给这个CR寄存器赋值?其实这是一个比较底层的问题,不懂这方面的知识
三相交流异步电动机的节电器节电保护一直是电机领域研究的热点,特别是近几年来全国出现电力供应紧张的局面,使得对交流异步电动机的节能设备的研究和推广更为迫切。三相异步电动机由于结构简单,智能节电器使用方便
Flash的操作:stm32大容量的flash不仅用来存储程序代码,还可用来存储一些数据和系统用户的参数。程序的代码一般保存在从flash开始区域,剩下的区域空间大小可以用来存储用户数据(大小取决于Flash的大小和代码占用空