05.03.2008, 20:42
|
|
Прохожий
Регистрация: 17.06.2005
Сообщений: 7
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Спасибо поэксперементирую.
А что значит фраза про кнопочку
|
|
|
|
05.03.2008, 20:44
|
|
Прохожий
Регистрация: 17.06.2005
Сообщений: 7
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
А... Понял уже сам разобрался.[/b][/code]
|
|
|
|
06.03.2008, 18:45
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Хотелось бы узнать как работает эта функция
Код:
|
set_tris_lcd(LCD_READ); |
Когда аргумент структура:
Код:
|
struct lcd_pin_map const LCD_WRITE = {0,0,0,0,0};
struct lcd_pin_map const LCD_READ = {0,0,0,0,15}; |
|
|
|
|
06.03.2008, 19:45
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Элеметарно Ватсон ...
Смотри драйвер LCD.C , что мы там видим ?
Код:
|
#define set_tris_lcd(x) set_tris_b(x) |
Смотрим хелп о set_tris_х():
Цитата:
|
set_tris_x( )
Parameters:
value is an 8 bit int with each bit representing a bit of the I/O port.
Returns:
undefined
Function:
These functions allow the I/O port direction (TRI-State) registers to be set. This must be used with FAST_IO and when I/O ports are accessed as memory such as when a #BYTE directive is used to access an I/O port. Using the default standard I/O the built in functions set the I/O direction automatically.
Each bit in the value represents one pin. A 1 indicates the pin is input and a 0 indicates it is output.
Availability:
All devices (however not all devices have all I/O ports)
Requires:
Nothing
Examples:
SET_TRIS_B( 0x0F );
// B7,B6,B5,B4 are outputs
// B3,B2,B1,B0 are inputs
Example Files:
lcd.c
|
Аргументом реально передается байт ...
|
|
|
|
06.03.2008, 20:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Сообщение от CERGEI1982
|
Код:
|
set_tris_lcd(LCD_READ);
struct lcd_pin_map const LCD_WRITE = {0,0,0,0,0};
struct lcd_pin_map const LCD_READ = {0,0,0,0,15}; |
|
Замудрено то как все,тогда что передается в функцию set_tris_lcd(LCD_READ); ведь пять значений в структуре
LCD_READ.
|
|
|
|
06.03.2008, 21:59
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Блин ну ты хоть драйвер то посмотри ...
Вот структура :
Код:
|
struct lcd_pin_map { // This structure is overlayed
BOOLEAN enable; // on to an I/O port to gain
BOOLEAN rs; // access to the LCD pins.
BOOLEAN rw; // The bits are allocated from
BOOLEAN unused; // low order up. ENABLE will
int data : 4; // be pin B0.
} lcd; |
Первые четыре компонента 1 битные , пятый 4 бита
4+4=8 т.е. байт ....
А то что ты показываешь это уже ИНИЦИЛИЗАЦИЯ ....
|
|
|
|
07.03.2008, 05:09
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Все дошло,спасиб за объяснение.Я же только учусь
Занимаюсь эти как хобби,для себя.Я даж не знал кто такой эмдер.
|
|
|
|
07.03.2008, 10:29
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
А вот эта директива #locate lcd = getenv("sfr:PORTB")
,из инициализации жки,обозначает что структуре lcd присвается адрес порта B.
|
|
|
|
07.03.2008, 10:59
|
|
Прописка
Регистрация: 16.04.2004
Сообщений: 201
Сказал спасибо: 337
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Сообщение от CERGEI1982
|
Все дошло,спасиб за объяснение.Я же только учусь
Занимаюсь эти как хобби,для себя.Я даж не знал кто такой эмдер.
|
И кто же такой этот эмдер ?
|
|
|
|
07.03.2008, 11:07
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Сообщение от Drex
|
Сообщение от CERGEI1982
|
Все дошло,спасиб за объяснение.Я же только учусь
Занимаюсь эти как хобби,для себя.Я даж не знал кто такой эмдер.
|
И кто же такой этот эмдер ?
|
Который с контролерами работает? код пишет и отлаживает,так?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:30.
|
|