Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 08.06.2013, 12:40  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от vlad_ru Посмотреть сообщение
С драйвером #include "Flex_lcd_16x1.c"
Исходники так не подключаются !!!

welcome61, то же самое
#include ‹DefaultFonts.c›
Реклама:
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 08.06.2013 в 12:53.
dosikus вне форума  
Непрочитано 08.06.2013, 13:38  
vlad_ru
Вид на жительство
 
Регистрация: 09.12.2006
Сообщений: 337
Сказал спасибо: 422
Сказали Спасибо 34 раз(а) в 26 сообщении(ях)
vlad_ru на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Куча примеров в сети , так подключены.
Flex_lcd_16x1.c - это драйвер LCD , с ним работает и в железе и в протеусе
LCD.C - только в протеусе работает , в железе нет.
vlad_ru вне форума  
Непрочитано 08.06.2013, 14:33  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от vlad_ru Посмотреть сообщение
Куча примеров в сети , так подключены.
Это не показатель , всего то многократно копируемая ошибка...
CCS можно юзать если не использовать его встроенные фичи и функции .
Но сейчас практически отказался от него , слишком много пакостей обнаружено .
И вам советую переходить на XC8 .

В качестве бонуса тот самый "драйвер"
Можно и нужно подправить заменив "магические" числа на дефайны...

lcd_hd44780.h
Код:
#ifndef LCD_HD44780_H
#define	LCD_HD44780_H
#include ‹xc.h›


 #define RS LA5
 #define EN LA4
 #define LCD_DAT LATA
 #define LCD_DAT_IN PORTA

void lcd_send(unsigned char ,unsigned char );
 void lcd_init(void);
void lcd_string(unsigned char ,unsigned char ,const unsigned char  * );
void lcd_cls(void);

#endif	/* LCD_HD44780_H */
lcd_hd44780.с
Код:
#include "lcd_hd44780.h"


#define strob_EN EN=1;__delay_us(5);EN=0;

void lcd_send(unsigned char com,unsigned char  dat)
{
 
  if(com)RS=1;
  else  RS=0;
 
  LCD_DAT= (LCD_DAT & 0xF0)|((dat››4)& 0x0F);
  strob_EN
  LCD_DAT=(LCD_DAT & 0xF0)|(dat & 0x0F);
  strob_EN
  __delay_ms(1);
}

void lcd_string(unsigned char x,unsigned char y,const unsigned char *dat)
 {
  unsigned char address;

if(y != 1)
   address = 0x40;
else
   address=0;

address += x-1;
lcd_send(0, 0x80 | address);

  while (*dat)
    {lcd_send(1,*dat);
     *dat++;
    }
 }

void lcd_init(void)
{

 RS=0;
 EN=0;
__delay_ms(10);
 LCD_DAT=((LCD_DAT&0xF0)|0x03);
 strob_EN
 __delay_ms(10);
strob_EN
 __delay_ms(10);
strob_EN
 __delay_ms(10);
 LCD_DAT=((LCD_DAT&0xF0)|0x02);
 strob_EN
 __delay_ms(10);
 lcd_send(0,0x20|(2‹‹2));
 __delay_ms(10);
 lcd_send(0,0x0c);
 __delay_ms(10);
 lcd_send(0,1);
 __delay_ms(10);
 lcd_send(0,6);
  __delay_ms(10);
 

 
}
void lcd_cls(void)
{
  lcd_send(0,0x01);
  lcd_send(0,0x02);
}
Часть кода с использованием из main.c
Код:
    lcd_init();
    delay(200);
    lcd_cls();
    lcd_string(1, 1, "Hello world");
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 08.06.2013 в 15:00.
dosikus вне форума  
Сказали "Спасибо" dosikus
vlad_ru (08.06.2013)
Непрочитано 08.06.2013, 14:40  
Picman
Прописка
 
Регистрация: 29.06.2005
Сообщений: 153
Сказал спасибо: 111
Сказали Спасибо 46 раз(а) в 32 сообщении(ях)
Picman на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

4.11.1. Включение файла
Средство «include позволяет, в частности, легко манипулировать на-
борами «def ine и объявлений. Любая строка вида
«include "имя-файла"
или
I
«include ‹имя-файла›
заменяется содержимым файла с именем имя-файла. Если имя-файла за-
ключено в двойные кавычки, то, как правило, файл ищется среди исход-
ных файлов программы; если такового не оказалось или имя-файла за-
ключено в угловые скобки ‹ и ›, то поиск осуществляется по определен-
ным в реализации правилам. Включаемый файл сам может содержать
в себе строки «include.
K&R
Picman вне форума  
Непрочитано 08.06.2013, 14:48  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Picman, И ЧТО ?
Речь не о оформление #include , а о подключение хэдеров и исходников( кода) модуля .
Идите читать тестера !!!

Сообщение от dosikus Посмотреть сообщение
слишком много пакостей обнаружено .
И это не просто слова .
Ковырял "драйвер" для nRF24L01 , состряпанный кем то из юзеров форума СCS .
Мало того что он просто не переносим , так еще умудрились перегрузку функций заюзать ...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 08.06.2013 в 14:51.
dosikus вне форума  
Непрочитано 08.06.2013, 16:09  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от dosikus Посмотреть сообщение
И ЧТО ?
А ничего, злокопипаст или непонимание.
Полный текст выглядит так:
Цитата:
Любая строка вида
#include "имя-файла"
или
#include ‹имя-файла›
заменяется содержимым файла с именем имя-файла. Если имя-файла заключено в двойные кавычки, то, как
правило, файл ищется среди исходных файлов программы; если такового не оказалось или имя-файла
заключено в угловые скобки ‹ и ›, то поиск осуществляется по определенным в реализации правилам.
Включаемый файл сам может содержать в себе строки #include.
Часто исходные файлы начинаются с нескольких строк #include, ссылающихся на общие инструкции
#define и объявления extern или прототипы нужных библиотечных функций из заголовочных файлов
вроде ‹stdio.h›.


Средство #include — хороший способ собрать вместе объявления большой программы. Он гарантирует, что
все исходные файлы будут пользоваться одними и теми же определениями и объявлениями переменных,
благодаря чему предотвращаются особенно неприятные ошибки. Естественно, при внесении изменений во
включаемый файл все зависимые от него файлы должны перекомпилироваться.
И ни слова про .с файлы.
nahimovv вне форума  
Сказали "Спасибо" nahimovv
dosikus (08.06.2013)
Непрочитано 09.06.2013, 04:38  
Picman
Прописка
 
Регистрация: 29.06.2005
Сообщений: 153
Сказал спасибо: 111
Сказали Спасибо 46 раз(а) в 32 сообщении(ях)
Picman на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от dosikus Посмотреть сообщение
Идите читать тестера !!!
Это что новый "пастор"?
При всем уважении к тестеру, я считаю главными K&R.
Тем более, что активно использую подключение .с файлов через #include.
В IDE подключены только основной файл и модули из моей библиотеки через хидеры, а остальные функции подключены в основном файле через #include.
Те компиляторы, которые я использую(HT-PICC 9.83, XC8 и MikroC) спокойно это обрабатывают и программы нормально работают.
Возможно у меня не такие сложные программы, но это сильно упрощает разработку для меня.
Так уж сложилось, что я пишу программы в стороннем редакторе и мне удобней иметь дело с несколькими небольшими файлами, чем "прыгать" по длинному основному файлу. А писать на каждую функцию хидер просто лень, тем более, что K&R предоставили #include и не наложили никаких ограничений на файлы. Еще цитата
"Средство «include - хороший способ собрать вместе объявления боль-
шой программы. Он гарантирует, что все исходные файлы будут пользо-
ваться одними и теми же определениями и объявлениями переменных,
благодаря чему предотвращаются особенно неприятные ошибки. "

Последний раз редактировалось Picman; 09.06.2013 в 05:03.
Picman вне форума  
Непрочитано 09.06.2013, 10:04  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Есть правила, есть рекомендации, есть соглашения, а всё что вы тут понаписали - полная херня. Можете хоть головой об стенку биться.
Ещё раз! K&R упоминают только h-файлы, про с-файлы - ни слова!
с-файл подключается к проекту, а не с помощью #include в другом с-файле, а вместе с ним и объявления и прототипы находящиеся в h-файле (если таковой существует).
nahimovv вне форума  
Непрочитано 09.06.2013, 11:40  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Picman, к сожалению не припомню ваш ник на picborda и chipmk, откройтесь .
Понимаете уважаемый, язык С не ограничивается диалектами HT-PICC 9.83, XC8 и тем более далекой от стандарта ардуиноподобной говноподелкой MikroC.
И тем более язык С не изучается методом тыка с опробованием результата -
Цитата:
спокойно это обрабатывают и программы нормально работают.
Есть стандарт , и разработчики всяко следует ему .
Если для вас это темный лес начинайте изучать.
Здесь

И если вы внимательно читали K&R , у него нигде не упоминалось эта мерзость
#include xxx.c . Напротив , везде подключаются только заголовки .

Еще раз для закрепления :
1) Не изучаем язык методом тыка . Забываем о "заветах" пастера .
2) Директивой препроцессора подключаем только заголовки модулей/библиотек.
В которых нет и не может быть исполняемого кода.
Сам исполняемый код - файлы *.c , *.lib ,*.a ПОДКЛЮЧАЮТСЯ К ПРОЕКТУ !!!
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 09.06.2013 в 11:46.
dosikus вне форума  
Непрочитано 09.06.2013, 23:29  
vlad_ru
Вид на жительство
 
Регистрация: 09.12.2006
Сообщений: 337
Сказал спасибо: 422
Сказали Спасибо 34 раз(а) в 26 сообщении(ях)
vlad_ru на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Dosikus выложите , если не трудно , весь проект, который Вы приводили выше. Хочу посмотреть на XC8.

Последний раз редактировалось vlad_ru; 09.06.2013 в 23:31.
vlad_ru вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
i2c+ccs pic Gladkih Микроконтроллеры, АЦП, память и т.д 9 18.04.2016 22:17
PIC BASIC PRO Compiler 2.47 dosikus Proteus, KiCAD и другие ECAD 27 05.12.2009 05:48
изучение IAR AVR C compiler granel Микроконтроллеры, АЦП, память и т.д 0 10.10.2008 20:45
PIC C Compiler PCWH458 sergxxx Микроконтроллеры, АЦП, память и т.д 9 23.09.2008 18:25
Не включается дебаггер в CCS C Compiler BigMazzi Микроконтроллеры, АЦП, память и т.д 4 19.09.2008 13:34


Часовой пояс GMT +4, время: 10:30.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot