Программный SPI для PIC

Поклонники продукции Microchip Technology Inc тусуются тут.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus Если еще актуально. Набросайте схему .
Выложу код на CCS .
Да не лишнем будет рассекретить радио_модуль.
Реклама
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

О радиомодуле с удовольствием..это один из самых дешевых, называется TR24A, стоит всего 100 рублей штука, интерфейс как писал выше - SPI, работает на 2.4ГГЦ при дальности до 100 метров..
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Реклама
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Схема подключения как и у обычного слейва, только инициализация сложная :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus Если время ждет , завтра накидаю под 628 и выложу .
Но только код для осознания , с модулем не работал . Да и был бы он под рукой.
Далее чем собираетесь вести отладку ? Необходим хотя бы осциллограф , лучше логический анализатор .
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus писал(а):Схема подключения как и у обычного слейва, только инициализация сложная :)
Лапки пика какие хотите - минимум 3 . Если модуль критичен к /CS тогда 4.
Реклама
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Времени полно, подожду :) Ножек, да всего три. А тестить наверное в протеусе буду сначала, потом если заработает, возьму у кого нибудь осцилограф...Очень Вам признателен :beer:
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Реклама
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus писал(а): А тестить наверное в протеусе буду сначала, потом если заработает, возьму у кого нибудь осцилограф...Очень Вам признателен :beer:
Без проблем , Протеус 7.8 SP 2 . Компилятор CCS 4.120.
Кварц- МГц?
PORTB ?
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Кварц 4 МГЦ внутренний, можно порт В :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Чем глубже я погружаюсь в код от Слесарь, тем больше мне кажется, что я ничего не понимаю в этой жизни :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Слесарь
Друг Кота
Сообщения: 4789
Зарегистрирован: Ср июл 14, 2010 18:27:52

Re: Программный SPI для PIC

Сообщение Слесарь »

Это понятно. Надо быть слесарем, чтоб понять представленный код
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus писал(а):Чем глубже я погружаюсь в код от Слесарь, тем больше мне кажется, что я ничего не понимаю в этой жизни :)
Пример готов. Передача работает , а вот прием в протеусе пока не знаю как проверить . Чтобы без извращений и понятно было...
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Дайте хоть на передачу посмотреть, а то я сегодня себе уже всю голову сломал :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Лови , спрашивай .
Вложения
spi.rar
(39.72 КБ) 601 скачивание
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Надо же, совсем не страшно :) Вот только немного смущает вот эта ветка:

Код: Выделить всё

  if(spi_buffer&0x80)
  SDA=High;
  else 
  SDA=Low;
Расшифруйте пожалуйста строчку spi_buffer&0x80. Это по моему из битовых операций: значение буфера (10000110) битово умножается на 10000000 и если это истина (1), выполняется оператор условия - SDA=High; Я так понимаю в этом и заключается вся передача :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

К буферу применяем побитовое AND с маской , то есть выделяем седьмой бит .
Если он 1 то и вывод SDA 1 , и наоборот .
Проще говоря мы копируем последовательно все биты с буфера в вывод .

Вариация без маски - сдвигаем буфер через CARRY ( флаг переноса ) так же копируем анализируя.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Ну я так и понял, Спасибо :)
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Код: Выделить всё

#asm
      
      nop
      nop
      
      #endasm
Нельзя заменить на временные задержки...это же пустые операторы вроде?
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Hispanus писал(а):

Код: Выделить всё

#asm
      
      nop
      nop
      
      #endasm
Нельзя заменить на временные задержки...это же пустые операторы вроде?
Собственно не хотел без комментариев выкладывать ...
Это и есть задержка - даже NOP имеет время исполнения .
Это скорей защитный интервал , он может здесь и не нужен. Однако ЧМЗ в 16х еще не отменили.
Аватара пользователя
Hispanus
Грызет канифоль
Сообщения: 262
Зарегистрирован: Сб мар 26, 2011 14:17:14
Откуда: Оренбург

Re: Программный SPI для PIC

Сообщение Hispanus »

Да нет, впринципе понятно, просто и красиво..как раз то что надо :) Теперь можно начать мучить радиомодуль :solder:
У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Скоро выяснится, что рентгеновские лучи - мистификация.

[i]Лорд Кельвин, физик, 1899 г.[/i]
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Программный SPI для PIC

Сообщение dosikus »

Один нюанс - фузы сами выставите ? Забыл прописать ...
Ответить

Вернуться в «PIC»