ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
8 мая
51704
Konstantin (18.02.2006 13:34, просмотров: 1083)
Вопрос по С-компилятору IAR MSP430. При входе в функцию putchar значение параметра int ch функции принимает отличное от ожидаемого значение (должно быть 0x4Е т.к я вывожу символ N). Вместо этого параметр принимает значение 0x126A. Можно ли вообще добится чтобы компилятор правильно отображал значения автоматических переменных и параметров функции?
 printf("N ???.,%d, ??.???\n",*pf_nom );
......
 int putchar( int ch)
{
        int temp;

        P1OUT=P1OUT|0x10;                //????????????? ???????? ????? RS (P1.4) ? "1"
        temp=ch;
        temp=temp>>4;                   //????????? ??????? ???????
        P1OUT=P1OUT&0xF0;               //??????? ????? ????? ????? ??????? ???????
        P1OUT=P1OUT|temp;               //??????? ??????? ???????
        P1OUT=P1OUT|0x20;               //????????????? ???????? ????? E (P1.5) ? "1"
        delay(1);
        P1OUT=P1OUT&0xD0;               //????????????? ???????? ????? E (P1.5) ? "0"

        temp=ch;
        temp=temp&0x0F;                 //????????? ??????? ???????
        P1OUT=P1OUT&0xF0;               //??????? ????? ????? ????? ??????? ???????
        P1OUT=P1OUT|temp;               //??????? ??????? ???????
        P1OUT=P1OUT|0x20;               //????????????? ???????? ????? E (P1.5) ? "1"
        delay(1);
        P1OUT=P1OUT&0xD0;               //????????????? ???????? ????? E (P1.5) ? "0"

        P1OUT=P1OUT|0x0F;               //????????????? ????? ?????? ? ??????? ?????????

  return ch;
}