找回密码
 注册
关于网站域名变更的通知
查看: 946|回复: 1
打印 上一主题 下一主题

单片机C语言基础编程源码八则

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-6 13:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
单片机C语言基础编程源码八则
5 W1 z$ [" D  w2 P& p) X: P/ s/ S' A4 l1 M6 Y1 N
  b: l" \, r+ d: B) }9 p4 y

1.某单片机系统的P2口接一数模转换器DAC0832输出模拟量,现在要求从DAC0832输出连续的三角波,实现的方法是从P2口连续输出按照三角波变化的数值,从0开始逐渐增大,到某一最大值后逐渐减小,直到0,然后再从0逐渐增大,一直这样输出。试编写一函数,使从P2口输出的值产生三角波,并且使三角波的周期和最大值通过入口参数能够改变。

#include<absacc.h>              
6 @8 ^5 x9 X. b. O! Q7 S" z#define DAC0832 XBYTE[0x7FFF]4 g) h( `( b$ O  w
void san(unsigned char max1,unsigned char zhou1)
# }% `) c1 Y% H{$ d' `) T3 p6 m/ c. W
    unsigned char i,j,max,zhou;
, G2 _- C5 V1 z1 D0 n* |+ O    max=max1;5 |9 U4 A* d; k4 }
    zhou=zhou1;
* ?0 ]8 G6 X! [. twhile(1)2 _3 \8 s+ V9 V- ]
    {% Y7 Z' }% x: A! l
    for(i=0;i<=max,i++)6 @  s. |  i" a( B% q- ~% T0 L
    {0 u4 ]5 `. l% B, U6 `
        DAC0832=i;3 m) s0 C, ?( f" T5 t
        for(j=0;j<zhou/max;j++)3 H0 S5 i# W" j2 j& h
            delay();
  E- l" j) w: ^7 I* O0 q9 I}
5 x4 x/ l8 d2 j4 `* `8 F5 L% B    for(i=max-1;i>0,i--)5 }' e! Z8 d& x, V: w, r
    {
) c- Z; v/ _) M$ T8 e, m        DAC0832=i;
$ b+ z. r( W- r        for(j=0;j<zhou/max;j++). s) ~* C. l' {; q  l* Y
            delay();
4 k5 E2 \: W8 `: U( o) f) Z}9 l( s$ p) K$ E5 a5 R$ ]0 m
}. N( I2 F. v1 c. l* _
5 {; v5 |, t4 {  D- r. p/ C
游客,如果您要查看本帖隐藏内容请回复

" V! V* R- Z! I  {0 X5 m: F% c* l# I! }- M6 L; z! C
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-10 07:41 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表