资源简介
基于IAR的STM8L152的USART+ADC(双通道)带DMA+RTC定时唤醒+外部中断唤醒+低功耗HALT模式(源码)
代码片段和文件信息
/*
声明:
由于最近在做一个物联网的项目,有一些传感器节点需要用到STM8(主要是低功耗)
之前一直在用STM32,虽然STM8总体比STM32简单,但是对于第一次使用者来说,没有一些
历程还是不怎么方便的,因为网上关于STM8L系列的源程序不是很多,因此就将自己这几天
自己编写和调试的代码共享出来,这里只是一个框架,因为项目的核心涉及到机密,这里就
不共享了,希望对有用的朋友有帮助!
作者:
陈洋
重庆邮电大学
2014.3.18于实验室
*/
#include “stm8l15x.h“
#include “bsp.h“
#include “app.h“
#define USE_LSE
extern u8 USART_RX_BUF[ ];//串口接受缓冲区
extern volatile u16 USART_RX_STA;//接受状态
uint32_t fre;//外部时钟变量
CLK_SYSCLKSource_TypeDef clk;
volatile bool wakeup_flag = FALSE;//唤醒标志
void main()
{
BSP_Init( );//板级初始化
fre = CLK_GetClockFreq( ); //获得系统时钟
printf(“%uKhz\n“(unsigned int)(fre / 1000));
while (1)
{
if(USART_RX_STA&0x8000)//串口是否接受完一帧数据
{
printf(“%s\n“(char *)USART_RX_BUF); //回传验证
USART_RX_STA = 0;//清除完成标记
}
if(wakeup_flag == TRUE)//如果唤醒,要做的事情
{
printf(“RTC“);
wakeup_flag = FALSE;
/*
获取网关发来的配置参数并进行自身的参数的配置
向网关发送数据(遵循协议)
检测电源电压,如果过低,则LED闪烁
没有其他的任务就进入休眠状态
*/
}
delay_ms(500);
LED1_ON();
delay_ms(500);
LED1_OFF();
printf(“Battery:%f\n“(float)ADC1_Channel1_Battery);
printf(“Vrefint:%f\n“(float)ADC1_Channel_Vrefint);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-03-18 19:36 RTC-STM8\
目录 0 2014-03-18 19:36 RTC-STM8\APP\
文件 917 2014-03-18 16:35 RTC-STM8\APP\WirelessProtocol.c
文件 1713 2014-03-18 19:36 RTC-STM8\APP\app.c
文件 841 2014-03-18 16:25 RTC-STM8\APP\app.h
文件 3255 2014-03-14 17:40 RTC-STM8\APP\stm8l15x_conf.h
文件 13568 2014-03-17 20:19 RTC-STM8\APP\stm8l15x_it.c
文件 3802 2014-03-14 10:39 RTC-STM8\APP\stm8l15x_it.h
目录 0 2014-03-18 16:05 RTC-STM8\BSP\
文件 258 2014-03-18 16:05 RTC-STM8\BSP\bsp.c
文件 312 2014-03-16 13:07 RTC-STM8\BSP\bsp.h
文件 1637 2014-03-16 10:33 RTC-STM8\BSP\sysclk.c
文件 73 2014-03-14 13:45 RTC-STM8\BSP\sysclk.h
文件 163 2014-03-14 17:31 RTC-STM8\CY.eww
文件 40991 2014-03-18 19:36 RTC-STM8\CyProject.dep
文件 11254 2014-03-14 10:39 RTC-STM8\CyProject.ewd
文件 45456 2014-03-18 15:44 RTC-STM8\CyProject.ewp
文件 163 2014-03-14 10:39 RTC-STM8\Cyeww.eww
目录 0 2014-03-17 19:58 RTC-STM8\Debug\
目录 0 2014-03-18 16:04 RTC-STM8\Debug\Exe\
文件 35478 2014-03-18 16:04 RTC-STM8\Debug\Exe\CyProject.hex
文件 250868 2014-03-18 16:04 RTC-STM8\Debug\Exe\CyProject.out
目录 0 2014-03-18 19:36 RTC-STM8\Debug\List\
目录 0 2014-03-18 19:36 RTC-STM8\Debug\Obj\
文件 2059 2014-03-18 19:36 RTC-STM8\Debug\Obj\CyProject.pbd
文件 5219 2014-03-16 20:22 RTC-STM8\Debug\Obj\Led.o
文件 6086 2014-03-18 15:58 RTC-STM8\Debug\Obj\WirelessProtocol.o
文件 8761 2014-03-16 20:22 RTC-STM8\Debug\Obj\adc.o
文件 10527 2014-03-18 16:04 RTC-STM8\Debug\Obj\app.o
文件 5863 2014-03-16 20:22 RTC-STM8\Debug\Obj\bsp.o
文件 8431 2014-03-16 20:22 RTC-STM8\Debug\Obj\delay.o
............此处省略129个文件信息
相关资源
- ADC0808工作时序图
- stm32的DAC播放音乐文件
- STM32F103 USART+DMA
- DMA+stm32 407.zip
- 4_USART串口通信(空闲中断+DMA.zip
- stm32f105-usart-DMA收发demo
- STM32F042F6P6 Uart12DMA;发送中断接收
- bcm5482 datasheet
- broadcom 802.11g 网络适配器驱动程序 v
- TD-SCDMA网络测试仪中E1数据采集卡的驱
- TD-SCDMA测试仪中Iub接口CDR的合成方案
- STM32F103VCT6TR - High-density performance lin
- 安捷伦CDMA2000测试解决方案
- FreeModbus_Slave+STM32F407+USART2代码亲测可
- AT89C51+ADC0808 PROTEUS仿真
- ADC0832ADC0809DAC0832三种芯片程序,c程序
- 数据采集系统——ADC0808的应用
- Pix4Dmapper4.4.10中文破解版带注册机网盘
- Pix4Dmapper4.4.10中文破解
- Pix4Dmapper教程
- 单片机串口printf函数自实现第二版
- stm32利用spi驱动tm1803
- qualcomm cdma technologies msm 驱动
- 超声处理原位反应合成Al2O3/ADC12复合材
- 基于溶胶凝胶法的TiO2溶胶的制备
- 矿井巷道时频编码协作MC-CDMA信道估计
- STM32AD采集DA还原
- shape_predictor_68_face_landmarks.dat.bz2 68个标
- 以单片机AT89S52、光电脉宽调制器芯片
- CP2102驱动WIN7、WIN10、32位、64位
评论
共有 条评论