Код: Выделить всё
Error[151] C:\TEMP\TEST.X\TEST.ASM 1222 : Operand contains unresolvable labels or is too complexКод: Выделить всё
IF HIGH(1024) != 0Разобрался.
В пропертях сборки нужно было поставить галочку Build in Absolute mode
Код: Выделить всё
Error[151] C:\TEMP\TEST.X\TEST.ASM 1222 : Operand contains unresolvable labels or is too complexКод: Выделить всё
IF HIGH(1024) != 0Код: Выделить всё
onfiguration for "pic16f628a" is
end configuration;
testbench for "pic16f628a" is
begin
process is
begin
wait;
end process;
clk_1: process is
begin
loop
T1OSCI <= '0';
wait for 200 ns ;
T1OSCI <= '1';
wait for 400 ns ;
end loop;
T1OSCI <= '1';
end process clk_1;
end testbench;ПОМОГЛО!!!!Попробуйте вместо bsf/bcf PORTA... писать bsf/bcf LATA. Ну и аналогично все записи в порты делать через LAT регистры, а не PORT.
Код: Выделить всё
int lcd_write_8_bit(int);
lcd_write_8_bit(tab[simv+j]); // П
Because the standard says so. The operands to binary operators undergo integral promotion, in which anything smaller than an int is promoted to int; the results of the operation have type int as well. And if the original value were, say, 0x12, the results would be 0x120, and assigning this to an unsigned char will cause a change in value. (The assigned value will be 0x20.) Whence the warning.
Но почему-то выдаёт такое же предупреждение.c = (c << 1) | (c >> 7);
if c is unsigned and non-volatile, the compiler will detect that the intended
operation is a rotate left of 1 bit and will encode the output using the PIC MCU rotate
instructions.
Но почему-то выдаёт такое же предупреждение.[/uquote]c = (c << 1) | (c >> 7);