毕业设计 基于PROTEUS的函数信号发生器的设计 - 图文(4)

2019-09-01 13:07

河南城建学院本科毕业设计(论文) 系统软件方案的设计

键盘输入请求。

3)中断工作方式

为进一步提高CPU效率,可以采用中断扫描工作方式。即在键盘有健按下时,才执行键盘扫描,执行该键功能程序。

本系统采用程序控制扫描工作方式。在该设计中的键盘的行列线连接于89C51的P2口上。键盘扫描程序自复位后就开始工作,时刻监视键盘,有无键按下。在监视键盘过程中,允许定时器中断。一旦有键按下,先延时1ms,去除键的抖动,然后关中断,不允许定时器发生中断。按键功能如表3-1所示:

表3-1 按键对应功能

按键 key1 key2 Key3

按键控制源程序如下: void delay(uchar k) {

for(de1=0;de1<10;de1++) for(de2=0;de2

为方波) 频率增加 频率减小 功能 键选择发波类型(1为正弦波,2为三角波,3为方波,4void key1(void) //1键选择发波类型,1为正弦波,2为三角波,3为方波 { fun++; if(fun==5) }

void key2(void) //2键加大频率 {

fun=0x01;

tl+=0xf; if(tl>0xe8)

tl=0x00; if(flag>0) flag--;

13

河南城建学院本科毕业设计(论文) 系统软件方案的设计

}

else flag=255;

void key3(void) //3键减小频率 {

if(th>0x00) { } }

void key4(void) { }

tl-=0xf; if(flag<255) flag++; else flag=0;

3.4. 中断服务程序设计

采用定时器T0定时中断,根据不同的按键次数,产生不同的波形。 void int1 (void) interrupt 2 //int0中断服务程序 {

if(P2!=0xff)

delay(125); if(P2==0xff) return;

if(P2==0xef) key1(); if(P2==0xdf) key2(); if(P2==0xbf) key3(); if(P2==0x7f) key4(); }

14

河南城建学院本科毕业设计(论文) 系统软件方案的设计

3.5. 波形发生程序设计

3.5.1. 正弦波发生程序设计

其实在计算正弦波形数据的时候,并不需要算出整个0—2π区间的每一个值,

11而只需计算出0—π中的值就行,其他区间的值都可以通过对0—π中的值取

2211不同的变换。比如π—π的值可以和0—π值一一对应,而π—2π的值可以

22对0—π区间的值取反得到。计算值可以用C语言编程得到。

90幅度公式为Y=2.5[1+sin(N)] (N=0,1,2??64)

645相应的Y值数字化后的递增量δ=≈0.0196

255Y2?Y1那么每一个点相对于起一个点的递增率为A= (Y2当前的点,Y1为

δ前一个点)

所以每一个点的数字量与递增率A成一一对应关系,正弦波形数据表见表3-2。

15

河南城建学院本科毕业设计(论文) 系统软件方案的设计

表3-2 正弦波形数据序号 幅度(Y值) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

递增率A 0.061353 0.122669 0.183911 0.245043 0.306027 0.366826 0.427405 0.487726 0.547753 0.607450 0.666782 0.725712 0.784204 0.842225 0.899738 0.956708 1.013103 1.068888 1.124028 1.178492 1.232245 1.285257 1.337494 1.388926 1.439520 1.489248 1.538079 1.585983 1.632932 1.678897 1.723851 1.767767 数字递增率 3 6 9 12 15 18 21 24 27 30 34 37 40 42 45 48 51 54 57 60 62 65 68 70 73 75 78 80 83 85 87 90 16 数字量(十进制) 131 134 137 140 143 146 149 152 155 158 162 165 168 170 173 176 179 182 185 188 190 193 196 198 201 203 206 208 211 213 215 218 2.561353 2.622669 2.683911 2.745043 2.806027 2.866826 2.927405 2.987726 3.047753 3.107450 3.166782 3.225712 3.284204 3.342225 3.399738 3.456708 3.513103 3.568888 3.624028 3.678492 3.732245 3.785257 3.837494 3.888926 3.939520 3.989248 4.038079 4.085983 4.132932 4.178897 4.223851 4.267767 河南城建学院本科毕业设计(论文) 系统软件方案的设计

33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 4.310617 4.352378 4.393022 4.432526 4.470866 4.508019 4.543962 4.578674 4.612134 4.644321 4.675218 4.704803 4.733061 4.759973 4.785524 4.809699 4.832482 4.853860 4.873820 4.892351 4.909440 4.925078 4.939255 4.951963 4.963194 4.972941 4.981199 4.987962 4.993226 4.996989 4.999247 5.000000 1.810617 1.852378 1.893022 1.932526 1.970866 2.008019 2.043962 2.078674 2.112134 2.144321 2.175218 2.204803 2.233061 2.259973 2.285524 2.309699 2.332482 2.353860 2.373820 2.392351 2.409440 2.425078 2.439255 2.451963 2.463194 2.472941 2.481199 2.487962 2.493226 2.496989 2.499247 2.500000 17

92 94 96 98 100 102 104 106 107 109 110 112 113 115 116 117 119 120 121 122 122 123 124 125 125 126 126 126 127 127 127 127 220 222 224 226 228 230 232 234 235 237 238 240 241 243 244 245 247 248 249 250 250 251 252 253 253 254 254 254 255 255 255 255


毕业设计 基于PROTEUS的函数信号发生器的设计 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:卵菌纲杀菌剂

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: