单片机
有关单片机使用,外设,电路
badagougou
这个作者很懒,什么都没留下…
展开
-
小蜜蜂单片机学习EFM8SB
EFM8SB 是一款芯科科技的8位低功耗单片机。开发环境 simplicity studio 。具体使用方法:http://download.csdn.net/download/badagougou/101647901 sbit 是定义特殊功能寄存器的位变量例如:sbit p0_0 = p0^0 定义p0_0 为P0口第一位2 sfr 定义一个八位特殊功能寄存器形式为:sfr原创 2017-12-19 17:48:13 · 5121 阅读 · 2 评论 -
ld3320的使用
http://blog.sina.com.cn/s/blog_52e8baa40101nik6.html网上搜集的博客,用来参照转载 2017-01-23 17:25:13 · 10786 阅读 · 3 评论 -
x5043应用
关于这些单片机外围芯片,首先要了解一下它们的大致功能,还有软件工程师关注的重点:寄存器及各个位的作用、指令系统、时序图。这三样应该细细阅读芯片手册,不能有一分差错。X5043功能(1):用作EEPROM。 用作看门狗 上电保护和低电压复位(设置电压阈值不讨论)原创 2016-01-11 11:20:41 · 2973 阅读 · 0 评论 -
一路两输入正与门SN74AHC1G08学习
、两个数据线分时输入一路原创 2015-11-19 16:41:29 · 949 阅读 · 0 评论 -
mcp23S18的使用
MCP23S18使用原创 2015-11-17 13:42:35 · 1438 阅读 · 0 评论 -
MCP23S18学习总结
MCP23S18的学习小结原创 2015-11-12 14:43:45 · 3730 阅读 · 2 评论 -
上拉电阻解决1036串口接收乱码问题
1036蓝牙模块kit,使用飞线连接用户mcu。从蓝牙log发现蓝牙模块时不时接收乱码数据。 原来是kit上串口线没有上拉电阻,导致手(手上有静电)靠近飞线时,产生乱码。 两个上拉电阻采用10K,一段接rx,一段接vdd。一段接tx,一段接vdd。原创 2017-06-22 19:27:30 · 1421 阅读 · 0 评论 -
gpio的工作方式
上拉输入:若GPIO引脚配置为上拉输入模式,在默认情况下(GPIO引脚无输入),读取 得的GPIO引脚数据位1,高电平。下拉输入:若GPIO引脚配置为下拉输入模式,在默认情况下(GPIO引脚无输入),读取 得的GPIO引脚数据位0,低电平。浮空输入:在芯片内部既没有接上拉,也没有接下拉电阻,经由触发器输入。配置成这个模式直接用电压表测量其引脚电压为1点几伏,转载 2017-04-09 12:57:55 · 958 阅读 · 0 评论 -
AD8226BRZ
Vout=VREF+(引脚2,3间接的电阻值)*(4脚电位—1脚电位)原创 2016-02-23 16:16:10 · 1149 阅读 · 0 评论 -
开漏输出
摘自http://www.51hei.com/mcu/3988.html开漏输出:输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).我们先来说说集电极开路输出的结构。集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所以叫做集电极开路(左边的三极管为反相之用,使输入为“0”转载 2016-01-08 16:47:44 · 6304 阅读 · 2 评论 -
串口数据的接收
char和uint8_t虽然大小一样,但是类型不同。串口数据接收时,最好用uint8_t。原创 2017-06-14 15:12:59 · 325 阅读 · 0 评论 -
stm32 内部AD和DMA使用
需求:利用STM32自带的AD测量电压,利用DMA将结果写入数组 注意:ADC1只能用DMA1的第一通道传输,ADC3只能用DMA2的第五通道传输这样,ADC1和ADC3测到的数据就保存到了ADC1_ConValue和ADC3_ConValue数组有时候while(ADC_GetFlagStatus(ADC3,ADC_FLAG_EOC));这句代码会卡死在这里,换成wh...原创 2016-09-01 12:50:58 · 1458 阅读 · 0 评论 -
keil 的stm32启动文件分析
;* 文件名 : startup_stm32f10x_hd.s;* 库版本 : V3.5.0;* 说明: 此文件为STM32F10x高密度设备的MDK工具链的启动文件;* 该模块执行以下操作:;* -设置初始堆栈指针(SP);* -设置初始程序计数器(PC)为复位向量,并在执行main函数前初始化系统时钟;* -设置转载 2016-02-22 14:13:47 · 2994 阅读 · 0 评论 -
时钟初始化flash设置
时钟初始化的时候,代码有这两句: /* Enable Prefetch Buffer */ FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); /* Flash 2 wait state */ FLASH_SetLatency(FLASH_Latency_2);这是因为CPU比flash速度快,例如原创 2016-02-02 14:22:37 · 2326 阅读 · 0 评论 -
SPI与ADS8345
最近在用SPI发送数据控制ADS8345原本SPI的操作子函数是这样的:u8 SPI3rw(u8 TxData){ while((SPI3->SR&SPI_I2S_FLAG_TXE)==0);//等待发送区空 SPI3->DR=TxData; //发送一个byte while((SPI3->SR&SPI_I2S_FLAG_RXNE)==0); //等待接收完一个b原创 2016-01-12 14:41:03 · 842 阅读 · 2 评论 -
STM32的EXTI小实验
stm32并没有使用Cortex-M3的全部256个中断,只用了一部分(16个内核+68个外部中断)中断线 所有GPIO口的0号引脚对应EXTI0中断线,类似的PA1~PG1对应EXTI1中断线。中断服务函数 中断服务函数名必须与启动文件startup_stm32F10x_hd.s的中断向量表定义一致 中断线0~4对应EXTI0_IRQHan原创 2015-12-16 15:55:36 · 1867 阅读 · 0 评论 -
SPI与ads8345
利用SPI发送控制字操控ads8345进行模数转换原创 2015-11-09 14:43:36 · 3670 阅读 · 4 评论