tian111 发表于 2020-12-1 20:25

设置为输入

各位,刚接触中颖单片机,有个问题请教,准备使用SH79F08某两个管脚来模拟I2C通讯,若通过PxCR将管脚设置为输出类型来发送I2C数据,而接收数据时是否需要及时将管脚类型设置为输入类型?

songqian17 发表于 2020-12-1 20:28

I2C需要OD模式端口。OD模式不需要反复设置输入输出模式。

chenho 发表于 2020-12-1 20:31

不支持OD模式的IO可以用方向控制来模拟OD模式:数据口置0,通过控制方向控制发0或1。

gongche 发表于 2020-12-1 20:35

还没用到IIC,用6488的串口,要设置TXD

huwr 发表于 2020-12-1 20:40

要得 不然怎么接收

gongche 发表于 2020-12-1 20:43

中颖有 SH79F08 的片片吗?

huwr 发表于 2020-12-1 20:47

中颖161的片子,上电要不要对所有的内部用户寄存器初始化的?

huanghuac 发表于 2020-12-1 20:50


初始化部分
    TCON = 0x01;
    EXF0 |= 0x01<<6;
    SleepTimeCount = 0;
睡眠部分:
IEN0 |= 0x01;
IEN1 |= 0x08;

SUSLO = 0x55;
PCON |= 0x02;

_nop_();_nop_();_nop_();

IEN0 &= ~0x01;
IEN1 &= ~0x08;

请指教

gongche 发表于 2020-12-1 20:54


单片机端口直连LCD的com和 SEG引脚, LCD为1/8 duty,1/3bias
程序初始化将所有缓存寄存器写0xff
void InitLCD(void)
{
    DISPCON=0x5f;//0110 1111选择LCD,允许LCD,关闭LCD对比度控制,1/8占空1/4偏压
    DISPCON1=0x02;//液晶工作在快速充电模式
    DISPCLK0=0x00;//
    DISPCLK1=0x00;//LCD时钟=振荡器频率
    P0SS=0x00;   //0000 0000 做I/O
    P1SS=0xff;   //1111 1111 19Segment
    P2SS=0x07;   //0000 0111
    P3SS=0xff;   //1111 1111 8COM
}
程序设置好后, 选择 1/4 duty,1/3bias 其中 com1,com2下的seg能点亮
               选择 1/8duty,1/4bias,屏幕没显示
是硬件连接上的问题还是软件问题呢 ?

tian111 发表于 2020-12-1 21:00

哦,那我就知道怎么回事了,多谢大家

songqian17 发表于 2020-12-1 21:03

输出PWM波
页: [1]
查看完整版本: 设置为输入