通用同步和异步串行接收器和转发器(USART)是一个高度灵活的串行通讯设备。主要特点为:全双工操作(独立的串行接收和发送寄存器)异步或同步操作主机或从机提供时钟的同步操作高精度的波特率发生器支持5,6,7,8,或9个数据位和1个或2个停止位硬件支持的奇偶校验操作数据过速检测帧错误检测噪声滤波,包括错误的起始位检测,以及数字低通滤波器三个独立的中断:发送结束中断,发送数据寄存器空...[详细]
代码#includeMSP430G2553.hvoidled_init();voidtimer0_init();voidmain(void){//StopwatchdogtimertopreventtimeoutresetWDTCTL=WDTPW+WDTHOLD;//--配置时钟-----BCSCTL1=CALBC1_...[详细]
相信大家在看到这篇文章的时候一定对WS2812芯片的时序有了一定的了解,这里对于WS2812硬件通信方面就不做过多的介绍了。驱动WS2812需要的实现纳秒级别的电平翻转,像一般主频较低的MCU很难实现这种级别的电平翻转。我在这里使用的MCU是STM32F103系列主频为72M,恰好可以通过延时翻转高低电平模拟WS2812的通信时序进而实现对WS2812灯珠的驱动。STM32通过普通IO方式...[详细]
前面两篇一篇分析了看门狗定时器的驱动架构,另一篇分析了平台设备对应的probe函数,虽然对应的remove函数没分析,其实和别的平台设备驱动一样,做和probe函数相反的工作。这一篇要说点啥呢?S3c2410_wdt.c(linux2.6.28driverswatchdog)在这个文件中还有很多函数,我们都没有分析过,这一篇就找些重要的函数分析下。1、那就先从s3c2410wdt_...[详细]
1.引言无线射频技术RFID(radiofrequencyidentification)是20世纪90年代兴起的一种非接触的自动识别技术,利用其射频信号空间传播的特性——通过空间耦合(交变磁场或电磁场)实现无接触信息传递,并通过所传递的信息来实现对被识别物体的自动识别。识别过程不需要物理接触,不需要人工管理即可完成标签信息的写入和读取。采用RFID技术,可以一次性实现对多个目标以...[详细]
集温度与时间在液晶上显示的智能电子体温计设计是我大二时自学51单片机又看完郭天祥大侠的新概念单片机后自己动手搭板子,自己写程序调试的电路简单得很,没有用到74HC573,刚从硬盘里找到了这个设计,幸存已久。今朝终于得见天日,特此纪念一下过往的大学实验室生活!本作品是基于现在的水银体温计测温时间长,难读或者读数不精确的现状下而研发的。我们知道去医院看病或自己在家中感冒发烧要测体温来查...[详细]
如果电路板需要处理负电平或者零点附近的信号,通常需要给电路板上提供一个负压电源,负压电源大部分时候主要供运算放大器使用。处理零点附近的信号,使用负压电源,能够得到更加好的特性表现。(轨对轨运放的特点是,输出电压几乎等于VCC的值,实际上像LM358这样的普通运放在零点处的表现还算不错。)有很多种方法可以提供负压电源,很常用的方法是使用DC-DC模块,比如兵装、金升阳等等,他们提供了多种正负...[详细]
Holtek推出e-Banking智能卡读卡器MCU--HT56RU25,继HT56RB27、HT56RB688USB接口单片机之后,推出全新UART接口单片机。HT56RU25内建ISO7816-3接口,并整合DC/DC与LDO至单片机内,同时支持1.8V/3V/5V三种卡片电压规格,ISO7816-3可符合国际EMV4.3与中国PBOC3.0ContactLevel1规范...[详细]
1.Cortex-M3内核架构2.Cortex-M3指令系统的开发总结:Cortex‐M3只使用Thumb‐2指令集。这是个了不起的突破,因为它允许32位指令和16位指令水乳交融,代码密度与处理性能两手抓,两手都硬。而且虽然它很强大,却依然易于使用3.Cortex-M3简介4.Cortex-M3寄存器组1.寄存器特性2...[详细]
1、参加了电子国赛,免费申请到了一块msp430fr6989的板,这是首次接触msp430单片机,对于此单片机,可以说是从c51单片机过度到stm32的学习良品。51单片机、msp430、ARM分别是8位、16位和32位,传说中的低端、中端和高端的段位。但是如果学完c51想直接过度到stm32也是没问题的。2、直接入正题了——本次需要下载的软件陈列和详细过程如下:(1)IAR软件(2)c...[详细]
一、移植环境主机:VMWare--Fedora9开发板:Mini2440--64MBNand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2二、移植步骤在这一篇中,我们首先让开发板对CS8900或者DM9000X网卡的支持,然后再分析实现u-boot怎样来引导Linux内核...[详细]
中断方式比较特殊,需要使用单片机内部的中断处理机制,同时指定中断函数。#includereg52.hsbitLED=P0^2;unsignedintvT=0;voidmain(){LED=0;TMOD=0x01;TH0=0x3C;//计数初值3CB0H=15536(65536-15536=50000*1us...[详细]
;********************************************************************;BinaryToBCDConversionRouTIne;ThisrouTIneconvertsa16BitbinaryNumbertoa5Digit;BCDNumber.ThisrouT...[详细]
前言平时开发STM32的时候,经常涉及到初始化引脚,便编写了一个快速初始化引脚函数,可分别在F1、F4使用,建议放在sys.c中硬件准备STM32开发平台程序设计对于STM32F1平台://以下宏定义等内容放在sys.h#definePARCC_APB2Periph_GPIOA#definePBRCC_APB2Periph_GPIOB#definePCRCC...[详细]
9.1.FWDG简介本章我们主要分析独立看门狗(FWDG)的功能框图和它的应用。独立看门狗用通俗一点的话来解释就是一个12位的递减计数器,当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即FWDGTRSTF。如果在计数没减到0之前,刷新了计数器的值的话,那么就不会产生复位信号,这个动作就是我们经常说的喂狗。看门狗功能由VDD电压域供电,在停止模式和待机模式下仍能工作。独立...[详细]