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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
单片机C语言基础编程源码八则# s! }& q- z% _4 h* N

* [6 J4 X9 X  T& A7 Y/ u! x

3 p9 E5 w% I" u! b" c

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

#include<absacc.h>              
8 q* P$ s! r# r  U  H+ ~#define DAC0832 XBYTE[0x7FFF]
% Y+ ?1 Y+ a( X; @: w% R1 a$ o& Tvoid san(unsigned char max1,unsigned char zhou1)* k: ?) |& `  e( P7 {- x
{
8 X, v% ^( }/ a) A& x" Z    unsigned char i,j,max,zhou;
$ P/ G. k& o& n* f$ C: Z8 x: a    max=max1;: H0 x0 d% v  y+ z  n8 \
    zhou=zhou1;
- _* a6 H, E0 l  Twhile(1)$ Z( S) C$ [  ^( h+ N! F! ^
    {
# M# {1 Z. M9 }( T$ y    for(i=0;i<=max,i++)
4 S: n5 [6 `# [) \1 Q8 ^; z    {
  w2 f+ z" h4 {        DAC0832=i;7 z1 Z+ k$ N6 r$ L; @
        for(j=0;j<zhou/max;j++)
5 z8 j( C  S+ q1 P            delay();# B; D5 K- Y  j
}
$ I2 F. j9 n+ Q( |2 Z$ h6 s    for(i=max-1;i>0,i--)
6 u6 q- W# s. A+ ^" x    {+ r7 B) w* S% m: O* x
        DAC0832=i;; p7 z0 l; f: C& C& m3 x/ b
        for(j=0;j<zhou/max;j++)
& D4 J" {* g, Q; q2 \            delay();
6 s) l8 r7 U7 D! U- Q: }}
- c, D; \+ L2 N}
! C$ n. _6 f) M3 a  z
- X/ d+ P) I' V4 V' z
游客,如果您要查看本帖隐藏内容请回复
0 Y/ c; s/ j  S# q

. P* g  ^7 ~% g  [
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-21 15:43 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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