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

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

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

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

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

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


 
Опции темы
Непрочитано 06.03.2013, 23:37  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Интересно , а кто нибудь в курсе , что в CCS перегрузка функций реализована ??
Блин , и самое хреновое, что буржуи ее юзают...

Сообщение от Eddy71 Посмотреть сообщение
Я про #use fixed_io, fast_io, standard_io..
Вот доиграетесь вы со встроенными фичами.
Только что сейчас нарвался ...
Реклама:
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 06.03.2013 в 23:40.
dosikus вне форума  
Непрочитано 07.03.2013, 00:29  
Eddy71
Почётный гражданин KAZUS.RU
 
Аватар для Eddy71
 
Регистрация: 22.02.2008
Адрес: Ukraine, рядом с Полтавой
Сообщений: 9,792
Сказал спасибо: 5,564
Сказали Спасибо 25,384 раз(а) в 5,700 сообщении(ях)
Eddy71 на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Насчет перегрузки не знаю, а про #use_хххх в мануале хорошо всё разжевано. В .lst файлах всё очень наглядно видно.
Eddy71 вне форума  
Непрочитано 07.03.2013, 08:05  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от Eddy71 Посмотреть сообщение
а про #use_хххх в мануале хорошо всё разжевано.
Дело не в отсутствии информации , дело в том что это уводит от стандарта ...
А перегрузка, пожалуйте :
Код:
int RF24_comm(int comm) { 
   int rv;                       //rv=return value(SPI nRF24 status read value) 
   RF24_select();        
   rv=RF24_xfer(comm);           //RF24 Write address/command(see RF24_addr addresses list tabble in .h file) 
   rv=spi_read2();               //It´s necessary due to spi_xfer read bug 
   RF24_unselect();    
   return rv;                    //Return last read value 
} 
// 
int RF24_comm(int comm, int comm1) { 
   int rv;                       //rv=return value(SPI nRF24 status read value) 
   RF24_select();        
   RF24_xfer(comm);              //RF24 Write address/command(see RF24_addr addresses list tabble in .h file) 
   rv=RF24_xfer(comm1);          //Write config.value or command 
   rv=spi_read2();               //It´s necessary due to spi_xfer read bug 
   RF24_unselect();    
   return rv;                    //Return last read value 
} 
// 
int RF24_comm(int comm, int32 comm1, int commDS) {   //commDS=datasize(1 to 32 bits) 
   int rv;                             //rv=return value(SPI nRF24 status read value) 
   RF24_select();        
   RF24_xfer(comm);                    //RF24 Write address/command(see RF24_addr addresses list tabble in .h file) 
   rv=spi_xfer(RF24_SPI, comm1, commDS);//Write config.value or command(1 to 32 bits of data)___I CANNOT USE RF24_xfer() ALIAS BECAUSE IT NOT ACCEPTS MORE THAN 1 PARAMETER 
   rv=spi_read2();                     //It´s necessary due to spi_xfer read bug 
   RF24_unselect();    
   return rv;                    //Return last read value
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 07.03.2013, 11:57  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Во, как раз в тему Использовал самодельный драйвер, теперь решил поковыряться с аппаратным SPI (правда, это только у мастера возможно, все остальные программные, да и МК на разных частотах... от 4 до 12МГц).
spi_read и spi_write работают только с железным SPI? (ну, во всяком случае, у меня так получается). Тогда смысл в использовании xfer? И что за баг там?
И вот еще никак не могу понять с baud. Можно любое число ставить? Меньше 3331 не дает.
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.

Последний раз редактировалось DK; 07.03.2013 в 12:05.
DK вне форума  
Непрочитано 31.03.2013, 09:39  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Народ, объясните тупому такую штуку:
Есть структура.
Цитата:
typedef struct udp_packet {
uint16_t from_port;
uint16_t to_port;
uint16_t len;
uint16_t cksum;
uint8_t data[];
} udp_packet_t;
Походу, в программе используется выражение типа sizeof(udp_packet_t)
Оно равно 9
Ну не могу я понять. Ведь поле data может иметь любую длину? Т.е. если записываю в него 10 байт, то размер структуры должен получится 8 + 10 байт? А получается 19...
Дальше - хуже... При расчете длины пакета IP и его контрольной суммы опять всплывает лишний байт (на КС данных UDP можно плюнуть, оно не важно)...
Ну вообще-то это стек под АВР был сделан (ув. тов. Lifelover-ром). Там вроде все нормально заводится. А я это пытаюсь в ПИК18 запихнуть.
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 31.03.2013, 10:18  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

DK, Не все компиляторы адекватно работают с динамическими массивами в качестве члена структуры.
Под что писано под AVR ?
IAR вроде так же не переваривает подобное.
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 31.03.2013, 11:45  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от dosikus Посмотреть сообщение
писано под AVR ?
Вроде. Или AVR Studio 4. Кто-то без проблем портировал под STM8
Ну да там все грамотно сделано. Только в последних статьях пошли навороты вроде memcpy_P и тому подобного. Как я понимаю, библиотека специфическая компилера для АВР pgmspace.h
И еще CCS не различает маленькие и большие буквы... Тоже достает, когда константы люди в капсе обзывают, а потом с тем же именем переменную или функцию заводят...
Ну во всяком случае, с UDP все получилось (с учетом коррекций длины), а вот с TCP никак пока. Похоже там тоже надо корректировать длину...
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.

Последний раз редактировалось DK; 31.03.2013 в 11:47.
DK вне форума  
Непрочитано 02.04.2013, 14:31  
xDriver
Частый гость
 
Аватар для xDriver
 
Регистрация: 01.03.2008
Сообщений: 37
Сказал спасибо: 3
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
xDriver на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Сообщение от DK Посмотреть сообщение
И еще CCS не различает маленькие и большие буквы... Тоже достает, когда константы люди в капсе обзывают, а потом с тем же именем переменную или функцию заводят...
Надо указать директиву
Код:
#CASE
и все будет
xDriver вне форума  
Сказали "Спасибо" xDriver
DK (03.04.2013)
Непрочитано 02.04.2013, 17:06  
patriaomuerte
Прописка
 
Регистрация: 10.04.2007
Сообщений: 180
Сказал спасибо: 7
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
patriaomuerte на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

Решил тут попробовать CCS, до этого пользовался только HT и XC8.
И возник у меня вопрос: можно ли не пользоваться этими их супер-пупер функциями и писать прямо в регистры как в нормальных компиляторах?
patriaomuerte вне форума  
Непрочитано 02.04.2013, 18:35  
xDriver
Частый гость
 
Аватар для xDriver
 
Регистрация: 01.03.2008
Сообщений: 37
Сказал спасибо: 3
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
xDriver на пути к лучшему
По умолчанию Re: Изучение PIC C Compiler(CCS C)

да сколько угодно
Код:
#include ‹18F45J50.h›

#device adc=8
#case
#BYTE TCLKCON = 0xF52
....
....
void main()
{
   TCLKCON = 0b00000010;
....
....
xDriver вне форума  
 

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

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

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, время: 16:45.


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