标题: 有单片机程序问题请教一下大佬 [打印本页]

作者: bd5fna    时间: 2024-10-30 15:50
标题: 有单片机程序问题请教一下大佬
这个kill 数据从哪儿来的。
#include <at89x51.h>
#include <stdio.h>

#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long

void calc();
void pll(unsigned long);

ulong rcdata,nadata,sun,kill;

sbit data=p2^2;
sbit clk=p2^1;
sbit le=p2^0;

void calc()
{
     uchar a,cs;
    uint n,r;
     r=1280;
     n=246;
     a=12;
     cs=6;//cs=l;lds=h;fc=h;sw=l;
     rcdata=cs;
     rcdata=rcdata<<14;
     rcdata=rcdata+r;
     rcdata=rcdata<<1;
     rcdata=rcdata+1;
  nadata=n;
  nadata=nadata<<7;
  nadata=nadata+a;
  nadata=nadata<<1;
}

void pll (ulong kill)//msb first
{
     uchar i;
     sun=0x40000;
     for(i = 0; i < 19; i++)
     {
           clk=0;
          if(kill & sun)   //这个kill数据从哪里来的
           {
                 data=1;
           }
           else
           {
                 data=0;
           }
           clk=1;
           sun=sun>>1;
     }
     clk=0;
     data=0;
     le=1;
     le=0;

}

void main(void)
{
while(1)
{
  le=0;
  clk=0;
  data=0;
           calc();
           pll(rcdata);  
           pll(nadata);
}
}

作者: a185980800    时间: 2024-10-30 16:09
void pll (ulong kill)//msb
作者: a185980800    时间: 2024-10-30 16:10
void pll (ulong kill)不就是这个函数的参数吗调用这个函数的时候直接传入数据了
作者: xiaobendan001    时间: 2024-10-30 16:10
当然是函数的参数传递进来的啊。不过全局里面也有一个,不建议这样搞,全局和局部用一个名字。
作者: cyi8    时间: 2024-10-30 16:34
长整型参数,不赋值时为0.程序中作为子程序,调用时直接对长整型赋值后运行子程序。
作者: lkc8210    时间: 2024-10-30 16:39
calc()里计算出rcdata和nadata
然后传参进pll()函数对kill赋值

代码开头创建的kill用不上
作者: bd5fna    时间: 2024-10-30 21:03
感谢各位大佬,是通过 pll(rcdata);   pll(nadata); 对kill赋值吗?
作者: xiaobendan001    时间: 2024-10-31 08:14
bd5fna 发表于 2024-10-30 21:03
感谢各位大佬,是通过 pll(rcdata);   pll(nadata); 对kill赋值吗?

可以这么理解吧,哈哈哈
作者: jjy1039    时间: 2024-10-31 08:24
void pll (ulong kill)//msb first 这个函数里面,定义局部变量kill为ulong
作者: szqinyi    时间: 2024-10-31 09:45
这是C语言基础,建议温习下C语言
作者: 67498131    时间: 2024-10-31 10:06
函数传递呀
作者: bd5fna    时间: 2024-10-31 10:45
szqinyi 发表于 2024-10-31 09:45
这是C语言基础,建议温习下C语言

半道出家,只是对单片机感兴趣,自己搞点小玩意玩玩,没有系统学过C。
作者: xiaobendan001    时间: 2024-10-31 12:38
bd5fna 发表于 2024-10-31 10:45
半道出家,只是对单片机感兴趣,自己搞点小玩意玩玩,没有系统学过C。

网上买个书,很多入门的书,看几天都OK了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1