C语言程序完整示例
介绍单片机c语言方面的文章
自定义解码程序
//***************************************************************************** //说明:此解码程序为解自定义9位码,格式和1527仿.程序不完善.不要直接使用. //作者:*贝克*
//时间:2006-4-28
//***************************************************************************** #include <ht48R06A-1.h>
#include "main.h"
#include "init.h"
#include "func.h"
#include "sp_tim.h"
#include "sp_ext.h"
//***************************************************************************** //*********************硬件说明************************************************ //***************************************************************************** //******PC0为无线输入口******************************************************* //***PA4~PA7为四位命令输出口************************************************** //***************************************************************************** //*************主函数********************************************************** //***************************************************************************** void main (void)
{
byte i;
byte combak1,combak2;
init();
while(1)
{
_clrwdt();
//*******读取命令************************************************************ Comm=0;
if(AddsBak!=Adds)AddsRed();
if(RedFM())
{
if(Comm==combak1)
{
combak2=combak1;
}
else if(Comm==combak2)
{
combak2=combak1;
combak1=Comm;
}
介绍单片机c语言方面的文章
else
{
combak2=combak1;
combak1=Comm;
Comm=0;
}
}
else
{
combak2=combak1;
combak1=Comm;
}
if(Comm)
{
i=Comm&0x30;
if(i==0) //小于16
{
SendComDat=Comm;
Tim_Comm=25; //保持时间:8*25=200MS
}
}
if(Tim_Comm==0)SendComDat=0;
SendComm(SendComDat);
}//while(1)
return;
}
//***************************************************************************** //*************** Main.h******************************************************** //***************************************************************************** #ifndef MAIN_H
#define MAIN_H
//----------宏定义/常量定义--------------------------------------------------------------------------------- #define byte unsigned char
#define word unsigned long
//************端口定义******************************************************** #define _ton 0e_4
#define KREM _pc0
#define KREM_C _17_0
//************变量定义********************************************************* //------------位变量定义------------------------------------------------------------------------------------------ bit Key1,Key2,Key3,Key4,Key5,Key6,Key7,Key8,Key9;
bit SLock1,SLock2,SLock3,SLock4,SLock5,SLock6,SLock7,SLock8,SLock9;
//------------时间相关变量----------------------------------------------------------------------------------- byte Tim_Comm @0x60; //命令输出保持时间
介绍单片机c语言方面的文章
byte ADDs;
byte Mod_C; //强度变量
word FMData;
//------------公用-------------------------------------------------------------------------------------------- byte SendComDat; //向PCU2发送的命令数据
byte Comm; //本机命令数据
byte Adds,AddsBak;
//******常量定义************************************************************* #define PORTIN 1
#define PORTOUT 0
#endif
//***************************************************************************** //*************** init.h********************************************************* //***************************************************************************** #define IECON 0x04 //EMI1/EEI2/ETI3/EADI4/EIF5/TF6/ADF7中断允许(1-3)与标志位(4-6)
#define TMOD 0x86 //0B10000111 128分频32U加1
#define TIMC 0x06 //timer初值 4MHz定时8MS
//-----端口初始化--------------------------------------------------------------------------------------------- void port_init(void)
{
_pa=0x00;
_pac=0x00;
_pa=0x00;
_pbc=0x0F;
_pcc=0x01; //KREM输入口
_pc=0x00;
return;
}
//------定时器初始化------------------------------------------------------------------------------------------- void timer_init(void)
{
_tmrc=TMOD; //Timer模式设定
_tmr=TIMC; //Timer赋初值4MHz定时8MS
_ton=1; //启动定时器
return;
}
//-----中断初始化----------------------------------------------------------------------------------------------- void intc_init(void)
{
_intc=IECON;
_emi=1;
return;
}
介绍单片机c语言方面的文章
//------变量初始化----------------------------------------------------------------------------------------------- void variable_init(void)
{
SendComDat=0;
Tim_Comm=0;
return;
}
//-----本机地址读取----------------------------------------------------------------------------------------- void AddsRed(void)
{
_pbc=0x0F;
ADDs=_pb;
while(1)
{
Adds=_pb;
Adds&=0x03;
for(AddsBak=0;AddsBak<100;AddsBak++);
AddsBak=_pb;
AddsBak&=0x03;
if(AddsBak==Adds)break;
}
Adds<<=6;
Adds&=0xC0;
AddsBak=Adds;
return;
}
//-----初始化--------------------------------------------------------------------------------------------------- void init(void)
{
byte i;
word lssum;
port_init();
if(_to==0)
{
variable_init();
}
_clrwdt();
timer_init();
intc_init();
AddsRed();
return;
}
//**************************************************** …… 此处隐藏:5806字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高中教育]电子线路高频非线性部分2.1
- [高中教育]中班美术活动——我的小手
- [高中教育]常用三极管参数大全
- [高中教育]计算机常见故障及解决办法
- [高中教育]风机基础环水平度控制方法探讨
- [高中教育]机械安全工程(专升本)阶段性作业3
- [高中教育]2009年安徽省高考语文考试说明刍议
- [高中教育]unit5 let's eat公开课教案设
- [高中教育]计算机网络原理课后习题答案
- [高中教育]2016-2022年中国新能源市场研究与投资
- [高中教育]2015-2020年中国会议行业市场评估及投
- [高中教育]经销商大会峰会主持人串词开场白
- [高中教育]2014新版北师大数学三年级上册小熊购物
- [高中教育]七年级第一学期体育与健康全套教案
- [高中教育]第三章:国际金融市场
- [高中教育]六年级下册数学单元测试-2.比例 北师大
- [高中教育]2016年上海海事大学法学院624刑法之《
- [高中教育]中国碳化钙产业竞争现状及未来五年投资
- [高中教育]网络时代,我们怎么玩
- [高中教育]圆锥曲线——高中数学基础知识与典型例
- 高集医院世界艾滋病宣传日活动方案
- 苏教版六年级英语上册期末试卷含答案
- 全民枪战生化英雄模式幽灵怎么玩 生化
- 灿烂的宋元文化一导学案
- 第2章货币资金与应收款项
- 北师大版八年级下册数学第三章《分式》
- 浅析高分子材料成型加工技术
- 华南理工大学2013年度共青团先进集体及
- 教师资格科目二小学教案模板(共合集)
- 工程扩建可研报告
- 中华人民共和国海事局2014年度招录公务
- 提高农村小学生作文能力的教学尝试
- 徒手心肺复苏术操作步骤
- 毛概试题库7-15章
- 2014-2015学年度(上)初中班主任工作计
- 企业驾驶员安全生产责任书
- 第07章 不等式测试题-2016年高考文科数
- 医疗器械经营企业工作程序
- 考研英语必背36篇_彩版_精华
- 初中9月13-15假期作业 (1)




