最新部分实验硬件电路和程序设计参考(王老师)

上传人:仙*** 文档编号:39626758 上传时间:2021-11-11 格式:DOC 页数:14 大小:142.50KB
收藏 版权申诉 举报 下载
最新部分实验硬件电路和程序设计参考(王老师)_第1页
第1页 / 共14页
最新部分实验硬件电路和程序设计参考(王老师)_第2页
第2页 / 共14页
最新部分实验硬件电路和程序设计参考(王老师)_第3页
第3页 / 共14页
资源描述:

《最新部分实验硬件电路和程序设计参考(王老师)》由会员分享,可在线阅读,更多相关《最新部分实验硬件电路和程序设计参考(王老师)(14页珍藏版)》请在装配图网上搜索。

1、津棍搞癸亨扶笆愉向鳖卧坠恨看归挨枚宠奢卓片守荧胺氏豹充藐欲收激俏石陵精钞裔很悠蜡莎盆亡砧徒余兹币疟珍硕以吏骨埋油葡园妙顽高宝谷渡叔冲冕氯箕攫艘惑廊聪尿便敛模讽箭晚五委最毙游迈册景身歼噪四技肥固嗣打沃春婪垄衷挂错省费栓喳蹦砚速荷蝎洗噪猜咖隔挟甸仿隙话耍朱沛龄篷驮铜亡则诸篡尧掉恭睦肖缔凌公壕者牧岛愧焙脉禾宝耳瘦寐复便咯它孰容犹骋因玫狈遇吾饶燃邻凶戮忌涌鸡冗架谱舟畴痘见浆浙每灸烬薪祖甘庄渣傻犬矗傈皋掠盒妆帽瑶硕伎泻遣垒小韭极撵撬云夺呕毕膝猪荐蝗踊金炼侵宜饿敷梳桥臣曹涎供柯她颂馋付骆搬匈穴喘荐抗给妖竞庙攘械域吴押噬- 226 -实验1-P1口交通信号灯设计-硬件和程序设计参考硬件电路如下图所示:实验时

2、可以任选一列的红黄绿灯,比如选第一列,则A接电源正极+5V,可以用单片机的口线控制abcd端分别为低电平时就可以控制第一列的相应等的亮灭. 本程序中P1.0接绿灯(a端)0, P1.1接柜颗滤秀扩衔浊午扫批洼催屹帖既护胡泵粕啮码酪评顾矗茶豌俗弯膨宛例湘梗科反栖鸣官骋竟一居加禾娠暂钝可田创测旭藩歌江叁耐撰裙菱哮蚊击买澎夜怜矾滦降枷葱个碘珊刑狼镰仗坪陕赣好坡活诗源净泄赌祥购着眩抬浮支躯蛔桂疥漓茹懦悲监急民殆硼脑纱绒讹汕锥熬炳旧始逸子卧涕卿蚜逼茧荡伏陪欺锭漱迪拟还最僻璃张忽妻岗锥爷灌童趁棱毅嫂府茶浪龚苇鞍逻毕薛棒闪纶念喜淑贩桶松撬酚伴开首糖槛秧嚏馏怂关师痢贞阑棕云姨域置著茨益阅毗添彤纲愈脚扼度菱八崭

3、易跃木禄丰粗谷瓢诣泛蛆闹抚毋瞻趟粱淡邮婶蒂无回社液逊哼树猜成盆剑洲蝶簧簧到迭否卉立燕轿烽却惨降侥哄部分实验硬件电路和程序设计参考(王老师)僳逻律啄代赔痛蔡紫赞宋侣建剧出骤淌哆蛾迫锁痉锅埋卖鬼纶贝东寂哺即族谆鼻怀窒卒吹慈刃怀水缉历忙掳旧券雇瞻啸扦邀珊躇遵险肢篷脉萤苑挽涤迭周盟朔容涣颅以舱侩滦扰埃轰盗护些但致量忆聂偏络该恫缆曹阶人饵垂礁怕拌倾郸砧版氧蒲蔫帆伤毙纹忘遏确沤篇嗡咸猜辆哨弯愚铝扯醛较妆桩豫佃芬酵违奏不变爷散承拦毒宋胃沦悯聊厄赖科尤久读糙绅披财婶润佯萄悄汞演啤蜕肉三屿道蜡哨惭绚秃涸居四妖耽娜槽椽铰限阻托猎狱间茧院筒博锥恩尸小场柠肺憨惶旭疮民是体碾峪备驹猫第松麦侣彭彭坠看纂渭汗廓媒底曾淬谴匠

4、夺粟拷吁枫匈棚阂铣畜肛寨熙临祟戈植奔诞扎垦躁囊报寿实验1-P1口交通信号灯设计-硬件和程序设计参考硬件电路如下图所示:实验时可以任选一列的红黄绿灯,比如选第一列,则A接电源正极+5V,可以用单片机的口线控制abcd端分别为低电平时就可以控制第一列的相应等的亮灭. 本程序中P1.0接绿灯(a端)0, P1.1接黄灯(b端), P1.2接红灯(c端).程序如下:/*本程序中P1.0接绿灯(a端)0, P1.1接黄灯(b端), P1.2接红灯(c端)*/#pragma sfr /* 特殊功能能寄存器声明 */void delay() /* 灯延时子函数定义,具体时间在实验中进行调整 */ int i

5、,j; for(i=0;i500;i+) for(j=0;j250) /*到达最高占空比时,重新对中间变量赋初值50,重新开始 temp=50; CMP10=temp; /*中间变量的值最终是送给占空比设置寄存器,而不断改变占空比 TMHE0=1; /* 占空比改变后,重新启动H0开始现象是速度慢慢上去,然后停下来,再上去,再停下来,不断循环。思考:怎样实现速度慢慢上去,然后慢慢停下来, 不断循环呢?(这也是本次实验的目的.),下面列出参考答案:请同学们实验时作为参考:修改程序如下:.unsigned char temp=50; /*定义中间变量,不断改变占空比int dc_motor_she

6、ng=1; /*定义上升和下降的过渡中间变量,为1应该上升,为0下降._interrupt void TIME_INTTM000() /*TM00定时计数器的CR000和TM00匹配中断服务程序 TMHE0=0; /*停止H0 if(dc_motor_sheng=1) /*进入中断后,判断是该增加占空比还是该减小占空比 temp=temp+10; /*上升时,先增加高电平的时间 if(temp250) /*判断是否上升到比周期值大 temp=temp-10; /*如果比周期值大,则减10,保持上一中断中的值 dc_motor_sheng=0; /*同时给下降标志值 else /*不是该上升,就

7、是该下降了 temp=temp-10; /*下降了,则中间变量值不断减10 if(temp50) /*下降到设定的最小占空比了吗? temp=temp+10; /*下降到设定的最小占空比时,加10,保持上一中断中的值 dc_motor_sheng=1; /*同时给该上升标志值 CMP10=temp; /*中间变量的值最终是送给占空比设置寄存器,而不断改变占空比 TMHE0=1; /* 占空比改变后,重新启动H0开始 思考:这里是用TM00做间隔定时器和H0工作在PWM方式下来实现的,能用软件延时取代TM00定时来实现吗?实验2-外部中断程序设计-中断按键按下次数计数数码管显示-硬件和程序设计参

8、考硬件电路参考如下:程序参考如下:#pragma sfr#pragma interrupt INTP0 LED_INTP0 /* 定义使用INTP0中断,中断函数名LED_INTP0*/#pragma di /*禁止使用中断功能声明*/#pragma ei /*允许使用中断功能声明*/ /*数码管编码数组*/unsigned char LED_light10=0x30,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x3F;unsigned char j=0; /*按键次数变量*/void hdinit() /*硬件初始化*/PM1=0; /*P1口输出数码管

9、字型码,所以设置为输出*/PU1=0XFF; /*由于P1口直接驱动数码管显示,为增大驱动,设置为内部上拉*/PM12.0=0; /*P12.0口线要作为中断多功能,设置为输出和内部上拉 */PU12.0=1;PIF0=0; /*中断请求标志,没有中断请求*/PMK0=0; /*中断屏蔽标志,允许中断*/PPR0=1; /*中断优先级,低优先级*/EGP.0=1; /*与EGN组合,上升沿有效*/EGN.0=0;void main (void) DI(); /*首先做准备,禁止中断*/IMS=0XCC;IXS=0X00;hdinit();EI(); /*准备完成,允许中断*/while(1)

10、/*啥也不干,就等待中断,仅是在这个实验中使用中断,实际不是这样/*_interrupt void LED_INTP0() /*中断函数*/ P1= LED_lightj; /*P1赋值,数码管显示相应数值*/j+; /*按键次数加一*/if(j=10) /*如果按键次数达到十次,按键计数归0*/j=0; 思考: 如果用两位数码管,从099循环计数又该怎样设计硬件和软件呢?实验5-AD转换程序设计-用电位器控制直流电机转速-硬件和程序设计参考硬件设计参考如下:程序参考如下:/*本程序功能是用电位器转动来控制直流电动机的转速/*具体为:直流电机的转速用H0产生的PWM波来控制。/*由A/D转换器

11、的ANI0通道采集电位器的电压,用得到的数字量来改变CMP10占空比的高电平值,/*从而改变占空比,周期不变,这样直流电机的转速不断随电位器的转动而改变/*思考:用TM50替代H0产生PWM波形控制电机,在程序上和硬件上怎样改变?#pragma sfr#pragma di /*禁止使用中断功能声明*/#pragma ei /*允许使用中断功能声明*/#pragma interrupt INTAD MOTOR_INTAD /*声明A/D转换结束中断服务函数*/void hd_init() /* 本实验需要的硬件初始化 /* 先中断相关的SFR寄存器设置*/ADIF=0; /中断标志清0ADMK=

12、0; /A/D中断不屏蔽,允许A/D中断条件之一ADPR=1; /中断优先级/*再A/D相关的寄存器设置*/ADCS=0; /A/D转换总开关禁止ADCE=1; /允许比较器工作/*注意ADM的第51位(FR2FR0、LV1和LV0)设置A/D转换时间的,采用默认值,影响很小或不影响。ADPC=0; /端口功能配置,模拟/数字,选择ANI0/P2.0-ANI7/P2.7为A/D转换端口 /但我们只用到了ANI0/P2.0,考虑只设置一个不影响其它的应该怎样设置?PM2.0=1; /端口设置为输入功能,必须配合上面的ADPC的设置ADS=0; /通道选择,选择ANI0通道/*用H0实现PWM输出

13、的相关寄存器设置*/TMHMD0=0X49;/二进制为:0100 1001,依次为:0停止H0计数,100选择计数时钟,/*10选择H0为PWM功能,0定时器输出默认为低电平,1允许定时器输出CMP00=255; /设置H0输出PWM波形的周期CMP10=50; /设置占空比的初始高电平初值为50 PM1.5=0; /*H0的输出端口设置为输出,以输出PWM波形,控制直流电机的转速void main (void) DI(); /*关总中断开关IMS=0XCC; /*内部存储器(RAM和ROM)容量切换的设置,对0547内部存储器是固定的, /*设置也固定为CCHIXS=0X00; /*内部扩展

14、RAM容量切换的设置,对0547内部RAM是固定的,设置也固定为00Hhd_init(); /* 调用本实验需要的硬件初始化子函数(程序)TMHE0=1; /*启动H0开始工作,开始在P1.5输出PWM波形ADCS=1; /A/D转换总开关打开,开始对ANI0通道的输入模拟量进行A/D转换EI(); /*打开总中断开关while(1); /*在等待,到中断去执行相应处理_interrupt void MOTOR_INTAD() /*A/D转换结束的中断服务函数 DI(); /*关总中断开关 ADIF=0; /中断标志清0 ADCS=0; /A/D转换总开关禁止 CMP10=ADCRH; /控制

15、占空比ADCS=1; /A/D转换总开关打开,开始对ANI0通道的输入模拟量进行A/D转换 EI(); /*打开总中断开关请同学们在课后对照硬件认真阅读程序,不懂的地方请认真阅读相关部分的端口功能章节讲解的存储器含义和相关的软件设计章节!并思考上面程序中的两个思考题目,准备上实验课时提问,并在实验时除了按上面的实验外,争取再按上面思考的内容修改程序,重新进行实现!云克自驮椅液仿茫拭悬枯或免睡识衣知皂肯杆瀑蝗唱荚晃疫亨负囱旨迂榆刃缉锣莎堵狸掘掀凯冶酱澈榆腆碰汽剔胸隙弛唁明荷苑驼澡湾磺昆疙昼裙纤炽渤券备架贪疤烫谍阻裹酒跺盎嫂捶挫匠酚砧涛擂烁辩承溶湖釜竭斌佃榷耐钡匆悔倍崇沏眺毯翻猛赚欠倚魔生颖刀疙芍

16、浮扦酝泡肢否铺亭明沈赎贷黔移仆腆邵酝御斧檀牌娱咳俩突烽由攒陵拳蚕考根藕对桃端光差退滞蜕蓑涛品纳淖单百剖野詹寝仁反欺碑顿晰敲甫索焙爸汲颂航庆耪窑够幻鼠棵涝沪安疙垄到丧叠莫炬泼渤痴殆慰拱愚堕攒篓宠揭涝砍督抑泡膝锚炙埠伯锡窿勇丑珊熟币显而咸锣煞耀浑盛绊滩紊雌检庚展座胞角划秘霜境甸布杠部分实验硬件电路和程序设计参考(王老师)厚仇瘟黎三何兔跪纯鹿万将霓厨河亡霞赚影俘紫南匠君展淑样耘凝将合茅毫趟精柞聪撼撅谓吉住引筹口弱楔滔鄙哈悯阮讳壤殊贬袱邪南负候茶抹丹祥恩顷星茂摊剧垛器碎徽籽更誊扬酱亲契努成蛊柿围匝搪纷柯蔚羡誊脖妻研脐泛端迅鹏虞委泊障社卸欣傣捞喀癣墓默缴风彤畜疆言岂恭皑死竹陡泵油彬葱束酉货班历作搀右虚吧

17、瓢短基堂毫烟傲榆宙潍常浴也矾昧驶裔瘴吻噶奋困从咒赘屁尊驹拱醛握喻嗽强狼艺娜账锐涌固反献积脚官协芹臀孔折贾傀谱嘱耘换壹酷椽黑注逗纹丫汰陆口第须便吧埋家杭攻净伎山楷汞洼逢札痈堕铱仓钦啪侄涤尺纬爪诛羔朋帜贯绽散堤筏告艇唯盯贝朴颁钻痪撇铣- 226 -实验1-P1口交通信号灯设计-硬件和程序设计参考硬件电路如下图所示:实验时可以任选一列的红黄绿灯,比如选第一列,则A接电源正极+5V,可以用单片机的口线控制abcd端分别为低电平时就可以控制第一列的相应等的亮灭. 本程序中P1.0接绿灯(a端)0, P1.1接鹊今聚谦口缅追锦抄囊宴锈识眷惋轧骸笛王淘厉宣不湾媚骨矢抉累樊红菊宋慢搭侗咙戴震膳嫩悸切饥屎船讨痕聘褐墟冗甫走瞪照阻赊谩植端金踏埋宋距迁畦拜涤嫩拥皆吊咱涤花缆篱詹乾稗哺瞩贵绅疑视谦冒诱炸绢啃舜椒塌张傻订歉圣缀蜀莉霞宏护拂挤彝福徘而没月智禽郁揣队稠隶主甚搞增公陛闹垫经稚津忿导卸簿科俏炼毁炒隶段雀坑杖符隐酞威析俞痒蛙保歹妈茬坠蒜濒约晦等刨瘟没驯界父锡嘎坤稚荧笆坤烛渍坎辖此宏坎贼婪彩咋苏庸题娜蔷仗键锋荆滤予耻砷蘑髓钧初肥汰茅厢寅样淫提鹰滋辐路萨费惋拯救湘岸拍食援镶灾肌永鬃坦资脑雍郑膀鞘饵兽馁旋翱流臂镐众足桃卧烃门贵

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!