Thông báo

Collapse
No announcement yet.

[HITECH PIC) giúp mình đoạn code này với !

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • [HITECH PIC) giúp mình đoạn code này với !

    mọi người giải thích giúp mình đoạn code này với
    Code:
    while(1)
            {
                val_adc=read_ADC(); //doc gia tri adc
                val_tempC=round(0.48875855*val_adc); //val_temp=val_adc*500/1023
                for(i=7;i>=5;i--)
                {
                    lcd_gotoxy(i,1);
                    if((i==5) && (val_tempC==0))
                        lcd_putc(' ');
                    else
                        lcd_putc((val_tempC % 10)+0x30);
                    val_tempC=val_tempC /10;
                }
    tại sao hiển thị trên lcd lại cộng với 0x30 ạ!

  • #2
    Giá trị val_tempC %10 là giá trị integer ( mang giá trị từ 0 đến 9). Giá trị trong hàm lcd_putc(...) là kiểu char. Để chuyển một cách đơn giản giá trị của val_tempC %10 từ integer sang kiểu char là cộng thêm nó với 48 ( 0x30). Cách này chỉ dùng với giá trị integer từ 0 đến 9. Bạn có thể xem bảng mã ASCII để thấy rằng kí tự 0 đến 9 mang giá trị từ 48 -> 57.
    Last edited by duong_act; 03-05-2013, 23:59.

    Comment

    Về tác giả

    Collapse

    thangvc91 Tìm hiểu thêm về thangvc91

    Bài viết mới nhất

    Collapse

    Đang tải...
    X