Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
14.02.2008, 20:28
|
|
Временная регистрация
Регистрация: 05.06.2005
Сообщений: 84
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Знатокам С! Как передать в функцию порт?
Функция должна опрашивать входные порты микропроцессора(PIC18F4550). Как их передавать в функцию, вроде на битовые поля указателей в си нет. Подскажите кто может!
На самом деле ничего заумного, делаю тривиальную программу опроса кнопок! Но как видно изобретаю велосипед
|
|
|
|
14.02.2008, 22:06
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
|
Знаток С , блин .
В CCS input() проштудируй...
|
|
|
|
15.02.2008, 00:30
|
|
Временная регистрация
Регистрация: 05.06.2005
Сообщений: 84
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от dosikus
|
Знаток С , блин .
В CCS input() проштудируй...
|
а почему не с main() начать?
|
|
|
|
15.02.2008, 00:36
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
|
Прикалываться будешь когда прочитаешь...
input встроеная либа чтения порта CCS .
|
|
|
|
15.02.2008, 02:40
|
|
Временная регистрация
Регистрация: 05.06.2005
Сообщений: 84
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от dosikus
|
Прикалываться будешь когда прочитаешь...
input встроеная либа чтения порта CCS .
|
дадагой знаток.
ну так не у всех же этот компилятор, вдруг в C18 нет такой функции (сейчас к сожалению проверить не могу).
Вот если бы ты не поленился и выложил здесь содержимое этой функции из файла input.c (или где там у вас функции держат), тебе бы было зачёд!
|
|
|
|
15.02.2008, 06:39
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.06.2005
Сообщений: 1,389
Сказал спасибо: 19
Сказали Спасибо 210 раз(а) в 156 сообщении(ях)
|
а если передавать адрес порта и битовую маску?
|
|
|
|
15.02.2008, 07:56
|
|
Прописка
Регистрация: 11.07.2006
Адрес: Ru, Nsk
Сообщений: 249
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
а зачем вообще передавать порты? они ведь вроде глобально обьявлены и так. типа:
Код:
|
char scan_key(){
if(!RC0)key=1;
if(!RC1)key=2;
return key;
} |
|
|
|
|
15.02.2008, 09:11
|
|
Почётный гражданин KAZUS.RU
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
|
А вот хамить, автор ветки, не надо, хорошо ???
Вот тебе твой родной с18 - есть же самплы
Код:
|
#define tris_portA1 TRISAbits.TRISA1
#define input_portA1 PORTAbits.RA1
if (input_portA1 == 1) .....
#define BITSET(var,bitno) ((var) |= 1 ‹‹(bitno))
#define BITCLR(var,bitno) ((var) &= ~(1 ‹‹ (bitno)))
#define BITTST1(var,bitno) ((var) & (1 ‹‹ (bitno)))
#define 2 port_nogi
void (port_nogi)
{
if (BITTST1(PORTA,port_nogi)...... |
|
|
|
|
15.02.2008, 12:39
|
|
Частый гость
Регистрация: 13.11.2007
Сообщений: 43
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Сообщение от urry
|
А вот хамить, автор ветки, не надо, хорошо ???
Вот тебе твой родной с18 - есть же самплы
Код:
|
#define tris_portA1 TRISAbits.TRISA1
#define input_portA1 PORTAbits.RA1
if (input_portA1 == 1) .....
#define BITSET(var,bitno) ((var) |= 1 ‹‹(bitno))
#define BITCLR(var,bitno) ((var) &= ~(1 ‹‹ (bitno)))
#define BITTST1(var,bitno) ((var) & (1 ‹‹ (bitno)))
#define 2 port_nogi
void (port_nogi)
{
if (BITTST1(PORTA,port_nogi)...... |
|
Не подскажите он PIC18F1320 поддерживает ?
И откуда можно скачать С18 компилятор, я много про него слышал хотелось бы попробовать ?
Извиняйте за оффтоп.
|
|
|
|
15.02.2008, 13:29
|
|
Почётный гражданин KAZUS.RU
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
|
1. Компилятор берем отсюда – http://www.microchip.com/ MPLAB C18 Student Edition – для получения ссылки на закачку нужно региться , а также попутно
2. http://ww1.microchip.com/downloads/e...rade-v3_13.exe
Нормальную версию.
3. Делаем из студенческой версии нормальную. В принципе, можно оставаться и на студенческой, только раз в 2 месяца ее нужно сносить и ставить по новой. Вся операция проходит безболезненно. Но можно это обойти. Для этого :
Качаем отсюда http://www.remexpert.com/forum/dload...le&file_id=419
Распаковщик
Сначала устанавливаем студенческую версию , затем распаковываем нормальную (инструкция внутри архива) и заменяем файлы из студенческой версии распакованными.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:49.
|
|