轻松打造智能家庭卫士系统(原理,软硬件实现,器件选型)
深入的了解。通过本次大赛,我们对AVR32单片机的高级性能算是有了一个全新的认识。它的内部Flash多达512KB,完全保证了程序的存储。方便的基于优先级的中断管理,能让我们快速的实现程序的设计。还有,不能不说集成开发环境AVR Studio 5.0真的很方便,尤其是里面的模块化编程asf部分,在我们的设计过程中起到了很大的作用。
3 参考文献
《信号与系统》,ALAN V.OPPENHEIM著,西安:西安交通大学出版社,1997年;
《数字图像处理学》,元秋奇著,北京:电子工业出版社,2000年;
《模拟电子线路基础》,吴运昌著,广州:华南理工大学出版社,2004年;
《数字电子技术基础》,阎石著,北京:高等教育出版社,1997年;
《数据结构与算法》,张晓丽等著,北京:机械工业出版社,2002年;
《ARMLinux嵌入式系统教程》,马忠梅等著,北京:北京航空航天大学出版社,2004年;
《单片机原理及应用》,李建忠著,西安:西安电子科技大学,2002年;
附1:程序清单
/////////////////////////////////////////////////////////
//*************语音模块头文件***************************//
/////////////////////////////////////////////////////////
#ifndef _SOUND_H_
#define _SOUND_H_
#include asf.h
//IO口控制
#define GPIO_sound_control_Pin1 AVR32_PIN_PX23 //jidan0818 语音模块IO:PX17
#define GPIO_sound_control_Pin2 AVR32_PIN_PX25 //jidan0818 语音模块IO:PX17
#define GPIO_sound_control_Pin3 AVR32_PIN_PX27 //jidan0818 语音模块IO:PX17
#define sound_cs GPIO_sound_control_Pin1 //PTAD_PTAD1
#define sound_clk GPIO_sound_control_Pin2 //PTAD_PTAD2
#define sound_data GPIO_sound_control_Pin3 //PTAD_PTAD0
//函数声明
void init_sound_io(void);
void delay100us(unsigned char cnt);
void delay1s(unsigned char cnt);
void send_sound(unsigned char addr);
void sound_plus(void);
void sound_minus(void);
void sound_cycle(unsigned char addr);
void sound_stop(void);
void sound_test(void);
//各种报警语音声明
void sound_wet_waring_high(void); //湿度过高报警
void sound_wet_waring_low(void); //湿度过低报警
void sound_temp_waring_high(void); //湿度过高报警
void sound_temp_waring_low(void); //湿度过低报警
void sound_sunshine_waring_high(void); //湿度过高报警
void sound_sunshine_waring_low(void); //湿度过低报警
void sound_gas_waring_high(void); //湿度过高报警
void sound_gas_waring_low(void); //湿度过低报警
void sound_people_waring(void); //湿度过高报警
void sound_temp(short int t ) ;
void sound_time(unsigned char hh,unsigned char mm,unsigned char ss);
void sound_sunshine(short int t );
void sound_wet(short int t );
void sound_gas(short int t ) ;
void sound_welcom(void);
#endif
/////////////////////////////////////////////////////////
//****************延时服务函数***************************//
/////////////////////////////////////////////////////////
//系统延时初始化函数
void delay_init(unsigned long fcpu_hz)
{
#ifndef FREERTOS_USED
s_fcpu_hz = fcpu_hz;
#endif
}
//系统ms延时函数
void delay_ms(unsigned long delay)
{
#if (defined FREERTOS_USED)
vTaskDelay( (portTickType)TASK_DELAY_MS(delay) );
#elif (defined NUTOS_USED)
NutSleep(delay);
#else
cpu_delay_ms(delay, s_fcpu_hz);
#endif
}
//系统us延时函数
void delay_us(unsigned long delay)
{
#if (defined FREERTOS_USED)
vTaskDelay( (portTickType)TASK_DELAY_MS(delay) );
#elif (defined NUTOS_USED)
NutSleep(delay);
#else
cpu_delay_us(delay, s_fcpu_hz);
#endif
}
/////////////////////////////////////////////////////////
//**********部分重要的服务函数***************************//
/////////////////////////////////////////////////////////
//播放存放语音的底层函数
相关阅读
智能家庭离我们还有多远?
家庭卫士系统 传感器检测 人机交互 远程通信 AT32UC3A0512 相关文章:
- 基于51单片机SHT11温湿度传感器检测程序(含电路图)(11-19)
- 嵌入式系统中文输入法的设计(03-02)
- 基于Qtopia的嵌入式中文输入法设计 (07-15)
- 数字机顶盒人机交互组件的设计(02-27)
- 基于Qt的自主式水下机器人监控系统设计(03-18)
- 基于Linux和QT/E的软键盘设计(05-18)