|
各位有用到松下单片机的吗,附件是我最近搞的智能家居控制系统
松下单片机智能家居源程序如下:
- /***************************************************************************/
- /* DebugFactory Builder 软件仿真用文件 */
- /***************************************************************************/
- #include "DFSim1.h"
- /* 请在下面写上软件仿真领域的段声明 */
- #pragma _section T=DFSim, C=DFSim, D=DFSim, B=DFSim
- /* 请在此处声明不想在初始化程序中执行初始化的变量。 */
- /* (在DFEvent_ResetStart()中设置的变量等) */
- /*-------------------------------------------------------------------------*/
- /* 函数名 : DFF_sprintf */
- /* 描述 : 执行同sprintf相同的操作。 */
- /* 将buf设置为(char*)-1 , 便可执行调试器的命令。 */
- /* 注意 : 定义该函数是为了避免链接错误。 */
- /* 实际上,该函数体中的语句不会被执行 */
- /*-------------------------------------------------------------------------*/
- int DFF_sprintf(char *buf, const char *format, ...)
- {
- return 0; // dummy function
- }
- /*-------------------------------------------------------------------------*/
- /* 函数名 : DFEvent_ResetStart */
- /* 描述 : 重置执行后马上调用该函数。 */
- /* 注意 : 请不要改变该函数的名字。 */
- /* 重置开始后一定会调用该函数 ,因此可以将一些软件仿真 */
- /* 调试的初始化程序放在该处。 */
- /* 一般来说,程序中会包含对内存的初始化操作,在 */
- /* DFEvent_ResetStart执行后,程序便会执行对内存的初始化。 */
- /* 所以请注意,在上述情况下,即使在该函数中执行了内存的初始化*/
- /* 操作,也会没有任何意义。 */
- /* 因此有时可以采取特别指定段等方法来避免重复初始化。 */
- /* (请参考本文件的先头部分) */
- /*-------------------------------------------------------------------------*/
- void DFEvent_ResetStart(void)
- {
- /* 需要时,可以在此处记录软件仿真功能相关的命令。
- 例) 设置交换功能
- hFuncSwap = DFF_sprintf( DF_SEND, "Hook /FUNCSWAP,func2,func1" );
- */
- }
- /*-------------------------------------------------------------------------*/
复制代码
- /* MN101C/E/L SERIES C SAMPLE PROGRAM */
- /*-------------------------------------------------------------------*/
- #define ICR *((volatile unsigned char *)0x3FE9)
- /*-------------------------------------------------------------------*/
- /* 中断属性例
- 定时器0中断
- 矢量表编号=9
- 矢量表地址=0x4024
- ICR地址(1字节寄存器)=0x3FE9
-
- ICR比特配置
- bit0=中断请求标志位
- bit1=中断许可标志位
- bit6,7=中断等级(当比中断掩码等级小时,受理该中断)
-
- PSW比特设置
- bit4,5=中断掩码等级
- bit6=中断掩码标志位
- */
- /*-------------------------------------------------------------------*/
- //void main(void);
- void not_use(void);
- void initialize(void);
- void interrupt(void);
- /*-------------------------------------------------------------------*/
- volatile int LoopCount = 0;
- /*-------------------------------------------------------------------*/
- /*void main(void)
- {
- initialize();
- for(;;){
- LoopCount++;
- }
- }/
- /*-------------------------------------------------------------------*/
- void not_use(void)
- {
- return;
- }
- /*-------------------------------------------------------------------*/
- void initialize(void)
- {
- ICR = 0x0;
- asm(" mov 0xf0,D0");
- asm(" mov D0,PSW");
- }
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
智能家居程序.rar
(215.89 KB, 下载次数: 16)
|
|