单片机求解,如何把不同端口定义在一起整体输出。
发布网友
发布时间:2024-01-04 21:08
我来回答
共5个回答
热心网友
时间:2024-07-13 12:35
你试试这样定义:
union {
unsigned char BYTE;
struct {
unsigned char p41:1;
unsigned char p23:1;
unsigned char p22:1;
unsigned char p25:1;
unsigned char p24:1;
unsigned char p44:1;
unsigned char p54:1;
unsigned char p43:1;
} BIT;
} zhdat;
当然前面需要将p41=P4^1;定义了。
调用时可以这样赋值:
zhdat.BYTE=0xaa;
热心网友
时间:2024-07-13 12:36
可以用位拷贝和位复制这2个指令实现,BLD,BST。
将8个端口拷贝到一个字节里面。
热心网友
时间:2024-07-13 12:36
如果是我会用P2口,把4.1定义等于P2.0 4.4=2.1 5.4=2.6 4.3=2.7
热心网友
时间:2024-07-13 12:37
你把这些东西接在一个8位口不就行了
热心网友
时间:2024-07-13 12:37
哪个片片有这么吊的功能
单片机中如何将不同端口的8个io口用c语言定义为1个端口
是采用 _Boot 来定义某一位。用C语言举例子如下:typedef struct { unsigned char Bit0 : 1;unsigned char Bit1 : 1;unsigned char Bit2 : 1;unsigned char Bit3 : 1;unsigned char Bit4 : 1;unsigned char Bit5 : 1;unsigned char Bit6 : 1;unsigned char Bit7 : 1;}SBitChar;...
在单片机编程的时候,应该怎样去定义单片机I/O端口的输入端和输出端?
不知你这说的什么锁存器了,一般74x73系列才有八个输入端口,它是在有外总线的单片机中做地址低位锁存用,如我没猜错,那你就把它这八个端口和p0口一一相联,再把g脚和ale/prog相联,电源接电源其它的全接地就ok!输出这时就是相应的地址a0~a7。
怎样把单片机的任意8个I0口定义成一个8位的字符型数据
确实写个子函数可以实现:但执行起来效率肯定很低,,还需一条一条执行,比用同一端口速度慢几十倍,有时候可能会影响刷新速度 如定义A B C D等为uchar型变量:读取时 A=P3.0<<7 B=P3.5<<6 C=P1.2<<5 ...DATA=A|B|C|D|E|F|G|DP 作为l输出时 P3.0=DATA|0X80 P3.5=DAT...
请问 用PIC 单片机 的 I/O 口,怎么同时设置成为输入、输出。
看来这是个比较有争议的话题哟,上面两位都说DHLFAN说的不对,我倒是有点说法了,将端口配置为模拟输入并不代表打开AD模块,ADGO没有置位嘛.并且当端口为模拟输入时候内部就等于是悬空的,因为AD模块是通过一个多路开关选择和某个通道接通的,平时不被选中的通道基本等于悬空,选中的通道也基本算是接...
PIC 单片机定义端口是怎么定义的?
PIC单片机的端口方向是由相应的TRISx寄存器决定的,其中x为A,B,C...如果相应的TRISx的位为0表示为输出,这个很容易记住,Output的第一个字母O和数字0相象。如果相应的TRISx的位为1表示为输入,这个很容易记住,Input的第一个字母I和数字1相象。如:TRISB=0b11001010;则表示RB7,RB6,RB3,RB1为输入...
pic单片机端口怎么定义
步骤:1.关闭所有AD/IO复用口得AD功能(如果需要某个IO做AD口则将对应的bit置0)AD1PCFG = 0xFFFF; //设置所有IO口为数字IO口,而非模拟IO口。2.设置相应的IO口为输出,这里假设用RA 的A0口来做数字输出口,RA的其他口为数字输入口。TRISA = 0xFFFE; //bit0 置为0,其他bit置为1...
单片机怎么实现三态输出?需要加什么器件
第一种:准双向口 (老的51单片机例如TA98C51单片机的P1口只能这个状态,不能设置其它状态)。单片机上电就默认这个状态,不用设置,如果从别的状态设置回这个状态,就用下面指令对寄存器P1M1和P1M0进行设置:P1M1 &= 0xfe; // 0xfe #11111110B P1M0 &= 0xfe; // 0xfe #11111110B ...
您好,请问在面粉厂中用AT89C52单片机如何实现多路开关量的输入和输出...
如果你认为单片机端口不够用的话,可以采用扩展方式;输入信号可以采用并行口转串口芯片(74hc165),可以多级级联;输出信号可以采用串行转并行的芯片(HC595),可以多级级联;当然传输速率会有所降低,得看你的输入输出信号参数如何;
定义单片机引脚输出
单片机的引脚是可以任意为输入/输出的,用不着什么定义。就算是做输入了,程序中也可以随时再改为输出的,只是电路上不能随时改。如果电路也可以任意改为输入/输出,那程序就可以随便改为输入/输出了。通常是用C语言写程序时,在主程序前,要用sbit 给引脚定义一个符号变量,但并不是定义输入/输出的,...
51单片机的P口能单独定义输入输出吗
通常作输入时,要选置1,但单片机上电后,默认的是置1的,只要你不是做出其它用,再做输入,就不用置1了。但为保险起见,多置一次1,没有关系。作输出时,不用管它,直接用就行了。另外,51单片机的P口的任一脚能单独用于输入或输出,无需事先定义。不过,在用作输入时要确保该管脚的输出锁存...