Имеем: процессор pic18f4550. Регистр UEP1 с адресом 0xF71. Также имеем два регистра косвенной адресации FSR0L и FSR0H. Каким образом в Си засунуть адрес UEP1 в FSR0. Заранее благодарю.
Сергей Борщ
Dec 16 2007, 15:40
Ответил на телесистемах
MicroDiP
Dec 17 2007, 03:26
Цитата(Сергей Борщ @ Dec 16 2007, 23:40)
Ответил на телесистемах
Сергей, спасибо. Всё заработало. Забыл про принудительное преобразование типов.
Код
FSR0L = (int)startAdr & 0xFF;
В принципе логически умножать на 0xFF не обязательно: он автоматом младший байт присваивает, а старший отбрасывает.
Сергей Борщ
Dec 17 2007, 11:22
Цитата(МикроДИП @ Dec 17 2007, 05:26)
В принципе логически умножать на 0xFF не обязательно: он автоматом младший байт присваивает, а старший отбрасывает.
Да, пожалуй вы правы. А вот если делать преобразование к unsigned char, то может выдать предупреждение "преобразование указателя к целому меньшего размера".
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.