char uart_rd;
int b;
void main() {
ANSEL = 0;
ANSELH = 0;
C1ON_bit = 0;
C2ON_bit = 0;
TRISC = 0;
PORTC = 0x00;
UART1_Init(9600);
Delay_ms(10);
UART1_Write_Text("Start");
UART1_Write(10);
UART1_Write(13);
while (1) {
if (UART1_Data_Ready()) {
uart_rd = UART1_Read();
UART1_Write(uart_rd);
**WordtoInt(uart_rd, b)**- this line code is my error
if(b <= 20)
{
PORTC = 0x01;
}
if(b > 20)&&(b <= 40)
{
PORTC = 0x03;
}
if(b > 40)&&(b <= 60)
{
PORTC = 0x07;
}
if(b > 60)&&(b <= 80)
{
PORTC = 0x0F;
}
if(b > 80)&&(b <= 100)
{
PORTC = 0x1F;
}
}
}
}这是我的任务。当我构建它时,它显示了一个错误。
我从0 to 100上读到了一些数字,这些数字表明了电池的电量,根据电量的不同,port C的0 to 5引脚会发光。
有没有人可以帮助我,如何找到将word转换为int的函数?
发布于 2011-12-08 03:13:29
uart_rd是一个单字节的字符变量。B是整型变量。要将uart_rd转换为b,只需执行以下操作:
b = (int) uart_rd;发布于 2011-12-08 03:14:38
简单地使用b = uart_rd;或b = (unsigned char)uart_rd;怎么样?
https://stackoverflow.com/questions/8420831
复制相似问题