21.01.2011, 22:21
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Респект Вам и уважуха, спасибо всем кто откликнулся! Буду пробовать и разбираться! Пример с выводом байта через ногу порта я списал в книге Сида Катцена "PIC микроконтроллеры полное руководство" стр373, дык там прямо написано:for (K=0; K‹=8; K++), видать сам об"-ся. По поводу CCS4.114 - погуглил и нашёл ссылочку, где не нужна регистрация и аккуант GOLD. Ставил 4.114 как apdate на 4.110 в один клик и всё работает! если очень нужно смогу скинуть в личку. Архив 28MB.
А динамическая индикация невозможна, т.к. ноги у профессора и так все связаны периферией, кроме того нужна частая её регенерация, в моём случае она не приемлема, т.к. это только маленькая часть моей программы!
Последний раз редактировалось Prototup; 21.01.2011 в 23:02.
|
|
|
|
21.01.2011, 23:57
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от Prototup
|
А динамическая индикация невозможна, т.к. ноги у профессора и так все связаны периферией, кроме того нужна частая её регенерация, в моём случае она не приемлема, т.к. это только маленькая часть моей программы!
|
Это ты не подумавши сказал . Ног столько же надо - это раз .
Изучи картинку - https://kazus.ru/forums/showpost.php...&postcount=737
Динамика займет мизер кода , это два.
И меньше на один корпус 74HC595 .
__________________
Осторожно , злой кот
|
|
|
|
22.01.2011, 00:03
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Подправил програмку с учётом ваших пожеланий результат - не работает. Показывает либо 8, если заданы цифры одинаковые, либо вообще ничего, либо каку-ето хрень!
Код:
|
#include ‹16F628A.h›
#fuses NOWDT, HS, PUT, NOPROTECT, BROWNOUT, NOMCLR, NOLVP, NOCPD
#use delay(clock=4000000)
#use standard_io (A)
#use standard_io (B)
#include ‹stdio.h›
/*------indikator definitions-----*/
#define SH_CP PIN_B1 /*выход для тактовых импульсов*/
#define DS PIN_B3 /*последовательный выход данных*/
#define ST_CP PIN_B2/*выход для защёлкивания данных*/
/*-------Global definitions-------*/
unsigned int8 datum;/*Промежуточная переменная хранения one, tens, fractions*/
unsigned int8 CONST digits [10] = {0x7F, 0x6,0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x7,0x7F, 0xF6};
/*----Function Prototup-----*/
void out_cifra (unsigned int8 datum);
/*----Function definitions------*/
/*---OUT_NUMB FOR INDIKATORS---*/
/*--------Запись в 74HC595---------*/
void out_cifra (unsigned int8 datum)
{
int K; /* переменная счётчик циклов*/
for (K=0; K‹=7; K++);
{
if (!(datum&0x80)) {output_low (DS);}
else {output_high(DS);}
output_high (SH_CP);
output_low (SH_CP);
datum=datum‹‹1;
}
return;
}
void main() {
while (true){
unsigned int8 one=0;/*единицы*/
unsigned int8 tens=0;/* десятки*/
unsigned int8 fractions=0;/*десятые доли*/
unsigned int8 edinici=0;
unsigned int8 desatki=0;
unsigned int8 sotni=0;
fractions =2; /*Подставляя сюда любые значения-результат один и тот-же*/
one = 6;
tens = 5;
/*---------------------Convert-конвертация из двоичного в код семисегментника*/
edinici=digits [fractions];
desatki=digits [one];
sotni=digits [tens];
/*---OUT_NUMB FOR INDIKATORS---*/
datum=edinici;
out_cifra (datum); /*вывод на семисегментный индикатор единиц*/
datum=desatki;
out_cifra (datum); /*вывод на семисегментный индикатор десятков*/
datum=sotni;
out_cifra (datum); /*вывод на семисегментный индикатор сотен*/
output_high (ST_CP); /* Для переписи в паралельный регистр 74НС595*/
output_low (ST_CP);
}
} |
На вложеной картинке индикация числа 265.
Последний раз редактировалось dosikus; 22.01.2011 в 00:11.
|
|
|
|
22.01.2011, 00:05
|
|
Почётный гражданин KAZUS.RU
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от dosikus
|
Это ты не подумавши сказал
|
ну почему, мне понравилось...
|
|
|
|
22.01.2011, 00:12
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Prototup, Знакогенератор надо весь менять , я только "5" исправил !!!!!!
Сообщение от dosikus
|
4) Заменил индикаторы так как на тех ни х... не видно.
|
!!!!!!!!!!!!!!!!!!!!!
__________________
Осторожно , злой кот
|
|
|
|
22.01.2011, 00:13
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Согласен, на счёт индикации - погорячился!
|
|
|
|
22.01.2011, 00:13
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
urry, Привет , пропажа !!!!!!
__________________
Осторожно , злой кот
|
|
|
|
22.01.2011, 11:18
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Добрый день Dosikus! Изменил саму схему и массив преобразования знакогенератора! Нихрена! Мож секрет есть какой? ![Голова кругом](images/smilies/icon_rolleyes.gif) Задаю в программе цифры 555 - индикаторы вообще не выводят ничего!
|
|
|
|
22.01.2011, 12:55
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Prototup, Так выкладывай что накодил ...
__________________
Осторожно , злой кот
|
|
|
|
22.01.2011, 14:02
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Ух! что накодил, то накодил! Проект ф топку! Это взрыв мозга изнутри! ![Бьюсь об стену](images/smilies/icon_obstenu.gif)
Извини что отрываю от важных дел! Жили бы вы в Москве угостил бы пивом!
Не казните, я только учусь С и подсказать мне некому!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 20:23.
|
|