Прерывание
void UART0_IRQHandler (void)
{
uint8_t IIRValue, LSRValue;
uint8_t Dummy = Dummy;
IIRValue = LPC_UART0->IIR;
IIRValue >>= 1;
IIRValue &= 0x07;
if ( IIRValue == IIR_RLS )
{
LSRValue = LPC_UART0->LSR;
if ( LSRValue & (LSR_OE|LSR_PE|LSR_FE|LSR_RXFE|LSR_BI) )
{
UART0 ...
Найдено 7 результатов
- Пн апр 29, 2013 07:36:33
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
- Пт апр 26, 2013 20:12:56
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
Re: LPC1768 + RS485
У меня она равна
#define LSR_THRE_BIT 5
попробовал сегодня перенести все в прерывание - в принципе работает - теперь без бесконечного цикла, но все равно иногда какой то косяк выскакивает - шлет пакет - получает ответ
следующая команда почему то не проходит. раз несколько вызываю эту команду и ...
#define LSR_THRE_BIT 5
попробовал сегодня перенести все в прерывание - в принципе работает - теперь без бесконечного цикла, но все равно иногда какой то косяк выскакивает - шлет пакет - получает ответ
следующая команда почему то не проходит. раз несколько вызываю эту команду и ...
- Пт апр 26, 2013 13:26:58
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
Re: LPC1768 + RS485
Спасибо) я тоже уже подумал перенести отслеживание передачи пакета в прерывание и завершать - переключать ногу - там же
книжку поищу - если найду скину сюда ссылку
книжку поищу - если найду скину сюда ссылку
- Пт апр 26, 2013 11:20:58
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
Re: LPC1768 + RS485
хорошо - приведу пример как у меня сейчас
#define rs485C0_init set(LPC_GPIO2->FIODIR,1UL<<8)
#define rs485C0_RX LPC_GPIO2->FIOCLR = 1UL<<8
#define rs485C0_TX LPC_GPIO2->FIOSET = 1UL<<8
volatile uint32_t UART0_rx_rd_index;
volatile uint32_t UART0_rx_counter;
volatile uint8_t UART0_TxEmpty = 1 ...
#define rs485C0_init set(LPC_GPIO2->FIODIR,1UL<<8)
#define rs485C0_RX LPC_GPIO2->FIOCLR = 1UL<<8
#define rs485C0_TX LPC_GPIO2->FIOSET = 1UL<<8
volatile uint32_t UART0_rx_rd_index;
volatile uint32_t UART0_rx_counter;
volatile uint8_t UART0_TxEmpty = 1 ...
- Пт апр 26, 2013 07:56:26
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
Re: LPC1768 + RS485
while ( !((LPC_UART0->LSR>>LSR_THRE_BIT) & 1) );
это проверка регистра на то что байт был отослан
в принципе сейчас вроде все работает, но иногда выскакивают странные глюки
то нормально обмен идет то при следующем включении обработается одна команда и все -
виснет в выше указанном цикле ...
это проверка регистра на то что байт был отослан
в принципе сейчас вроде все работает, но иногда выскакивают странные глюки
то нормально обмен идет то при следующем включении обработается одна команда и все -
виснет в выше указанном цикле ...
- Вт апр 23, 2013 11:25:07
- Форум: Периферия
- Тема: LPC1768 + RS485
- Ответы: 21
- Просмотры: 7043
LPC1768 + RS485
Приветствую разработчиков)
я новичок в программировании ARM, раньше все больше на Atmega программировал
начал разбираться с UART, брал стандартные примеры от Keil, но возникли непонятные проблемы. Сразу оговорюсь - на выходе с Уартов стоят изолированные RS485 - на каждый уарт свой изолированный ...
я новичок в программировании ARM, раньше все больше на Atmega программировал
начал разбираться с UART, брал стандартные примеры от Keil, но возникли непонятные проблемы. Сразу оговорюсь - на выходе с Уартов стоят изолированные RS485 - на каждый уарт свой изолированный ...
- Чт авг 09, 2012 10:31:52
- Форум: Микроконтроллеры и ПЛИС
- Тема: LPC1768 + KSZ8001IL
- Ответы: 0
- Просмотры: 19199
LPC1768 + KSZ8001IL
Здравствуйте знатоки
Досталась мне по "наследству" платка на базе LPC1768 - в принципе обычная девелопмент боард без каких либо излишеств.
Решил ее поизучать, научился управлять пинами (вкл выключать) запрограммировал RS485, все работает все здорово.
Потом руки дошли до Ethernet'a и тут возникли ...
Досталась мне по "наследству" платка на базе LPC1768 - в принципе обычная девелопмент боард без каких либо излишеств.
Решил ее поизучать, научился управлять пинами (вкл выключать) запрограммировал RS485, все работает все здорово.
Потом руки дошли до Ethernet'a и тут возникли ...