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

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

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

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

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

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


 
Опции темы
Непрочитано 07.01.2015, 15:54  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Интересно, вы, может быть с невероятным трудом, но PIC24 от dsPIC33 отличаете?
Реклама:
STM32F0 вне форума  
Непрочитано 09.01.2015, 21:54  
ZSG
Прописка
 
Аватар для ZSG
 
Регистрация: 07.12.2004
Адрес: Урал
Сообщений: 253
Сказал спасибо: 12
Сказали Спасибо 79 раз(а) в 41 сообщении(ях)
ZSG на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от vavan1983 Посмотреть сообщение
ZSG, у вас проект на столько требовательный к железу что без pic24 не обойтись?
У процессора dsPIC33FJ64GS606, а именно этот пришлось выбрать, разрешение PWM = 1nS. Именно этот параметр меня интересует. Кроме того есть DSP инструкции и высокая скорость. Но это уже сопутствующие детали. Сделана макетка нужен действующий спец по MPLAB последних версий или MPLABX.
ZSG вне форума  
Непрочитано 12.03.2015, 08:07  
nexsys
Гражданин KAZUS.RU
 
Аватар для nexsys
 
Регистрация: 11.07.2010
Адрес: Не Северный Кавказ, а Юг Сибири
Сообщений: 576
Сказал спасибо: 355
Сказали Спасибо 516 раз(а) в 241 сообщении(ях)
nexsys на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от ZSG Посмотреть сообщение
Сделана макетка нужен действующий спец по MPLAB последних версий или MPLABX
Советую MplabX и компиляторы под него XC: для 16 процессоров ( MPLAB® XC16 Compiler v1.24) http://www.microchip.com/pagehandler...tools/mplabxc/

Очень удобно - быстрый код на С получается, если хотите на ассемблере, то в этом компиляторе запросто.

В закладке загрузки ищите компилятор.
Миниатюры:
Нажмите на изображение для увеличения
Название: downloads.jpg
Просмотров: 44
Размер:	223.0 Кб
ID:	76670  

Последний раз редактировалось nexsys; 12.03.2015 в 08:40.
nexsys вне форума  
Непрочитано 12.03.2015, 09:04  
nexsys
Гражданин KAZUS.RU
 
Аватар для nexsys
 
Регистрация: 11.07.2010
Адрес: Не Северный Кавказ, а Юг Сибири
Сообщений: 576
Сказал спасибо: 355
Сказали Спасибо 516 раз(а) в 241 сообщении(ях)
nexsys на пути к лучшему
По умолчанию Re: Осваиваем PIC24

ZSG,
Вот заготовка - в конф. битах установите, что вам нужно.
Миниатюры:
Нажмите на изображение для увеличения
Название: загатовка.jpg
Просмотров: 64
Размер:	289.3 Кб
ID:	76672  
Вложения:
Тип файла: rar dsPIC33FJ.X.rar (33.1 Кб, 29 просмотров)
nexsys вне форума  
Сказали "Спасибо" nexsys
ZSG (04.09.2015)
Непрочитано 14.05.2015, 09:11  
Sashaoff2
Частый гость
 
Регистрация: 25.10.2010
Сообщений: 11
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
Sashaoff2 на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Здравствуйте!
В PIC24FJ128GB202 выводы вторичного кварца SOSCI и SOSCO не могу перевести в цифровые I/O. Вроде везде отключил вторичный. По XC16 ver.1.21 их нельзя сделать входами, но выходами вроде можно.
Sashaoff2 вне форума  
Непрочитано 14.05.2015, 11:34  
shindax
Прописка
 
Регистрация: 04.09.2009
Сообщений: 167
Сказал спасибо: 1
Сказали Спасибо 34 раз(а) в 25 сообщении(ях)
shindax на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от Sashaoff2 Посмотреть сообщение
Здравствуйте!
В PIC24FJ128GB202 выводы вторичного кварца SOSCI и SOSCO не могу перевести в цифровые I/O. Вроде везде отключил вторичный. По XC16 ver.1.21 их нельзя сделать входами, но выходами вроде можно.
Сам я с такими PIC не работал, но по даташиту вижу, что наоборот, RB4 и RA4 быть только входами, если не используется вторичный осциллятор.
shindax вне форума  
Сказали "Спасибо" shindax
Sashaoff2 (14.05.2015)
Непрочитано 14.05.2015, 20:41  
Sashaoff2
Частый гость
 
Регистрация: 25.10.2010
Сообщений: 11
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
Sashaoff2 на пути к лучшему
По умолчанию Re: Осваиваем PIC24

shindax, спасибо за отклик. Ваши слова направили в нужное русло. Проверил на железе - работают как входы, нет внутренних подтягивающих резисторов.

Последний раз редактировалось Sashaoff2; 15.05.2015 в 07:55.
Sashaoff2 вне форума  
Непрочитано 10.07.2015, 00:58  
RTSAM
Прохожий
 
Регистрация: 09.07.2015
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
RTSAM на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Пример инициализации LCD предложенный Petr_Dynin в посте №29 попробовал завести в протеусе 8.0, но как-то вот не работает. Кто-нибудь "пилил" этот примерчик? Как там в порте А раскиданы D0...D7? То что указано в каментах - PMD0-PMD7, никак не связано с портом.
Миниатюры:
Нажмите на изображение для увеличения
Название: LCD1.PNG
Просмотров: 33
Размер:	38.3 Кб
ID:	81325  

Последний раз редактировалось RTSAM; 10.07.2015 в 01:10.
RTSAM вне форума  
Непрочитано 02.09.2015, 17:59  
<VenoM>
Временная регистрация
 
Регистрация: 27.02.2012
Адрес: Николаев
Сообщений: 98
Сказал спасибо: 8
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
<VenoM> на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Непонятные глюки с SPI PIC24FJ256GB206. А именно: корректное значение записывается через раз в буфер SPI1BUF.
Код:
// Configuration bits: selected in the GUI

// CONFIG3
#pragma config WPDIS = WPDIS    // Segment Write Protection Disable-›Segmented code protection is disabled
#pragma config WPFP = WPFP255    // Write Protection Flash Page Segment Boundary-›Highest Page (same as page 170)
#pragma config WUTSEL = LEG    // Voltage Regulator Wake-up Time Select-›Default regulator start-up time is used
#pragma config WPEND = WPENDMEM    // Segment Write Protection End Page Select-›Protected code segment upper boundary is at the last page of program memory; the lower boundary is the code page specified by WPFP
#pragma config WPCFG = WPCFGDIS    // Write Protect Configuration Page Select-›Last page (at the top of program memory) and Flash Configuration Words are not write-protected
#pragma config SOSCSEL = SOSC    // Secondary Oscillator Power Mode Select-›Secondary oscillator is in Default (high drive strength) Oscillator mode
#pragma config ALTPMP = ALPMPDIS    // Alternate PMP Pin Mapping-›EPMP pins are in default location mode

// CONFIG2
#pragma config IESO = ON    // Internal External Switchover-›IESO mode (Two-Speed Start-up) is enabled
#pragma config IOL1WAY = ON    // IOLOCK One-Way Set Enable-›The IOLOCK bit (OSCCON‹6›) can be set once, provided the unlock sequence has been completed. Once set, the Peripheral Pin Select registers cannot be written to a second time.
#pragma config FNOSC = FRCDIV    // Initial Oscillator Select-›Fast RC Oscillator with Postscaler (FRCDIV)
#pragma config PLL96MHZ = ON    // 96MHz PLL Startup Select-›96 MHz PLL is enabled automatically on start-up
#pragma config PLLDIV = DIV12    // 96 MHz PLL Prescaler Select-›Oscillator input is divided by 12 (48 MHz input)
#pragma config POSCMOD = NONE    // Primary Oscillator Select-›Primary oscillator is disabled
#pragma config OSCIOFNC = OFF    // OSCO Pin Configuration-›OSCO/CLKO/RC15 functions as CLKO (FOSC/2)
#pragma config FCKSM = CSDCMD    // Clock Switching and Fail-Safe Clock Monitor-›Clock switching and Fail-Safe Clock Monitor are disabled

// CONFIG1
#pragma config WDTPS = PS32768    // Watchdog Timer Postscaler-›1:32,768
#pragma config ICS = PGx1    // Emulator Pin Placement Select bits-›Emulator functions are shared with PGEC1/PGED1
#pragma config FWPSA = PR128    // WDT Prescaler-›Prescaler ratio of 1:128
#pragma config WINDIS = OFF    // Windowed WDT-›Standard Watchdog Timer enabled,(Windowed-mode is disabled)
#pragma config GWRP = OFF    // General Segment Write Protect-›Writes to program memory are allowed
#pragma config GCP = OFF    // General Segment Code Protect-›Code protection is disabled
#pragma config FWDTEN = ON    // Watchdog Timer-›Watchdog Timer is enabled
#pragma config JTAGEN = ON    // JTAG Port Enable-›JTAG port is enabled

#include "mcc.h"

void SYSTEM_Initialize(void)
{
    OSCILLATOR_Initialize();
    PIN_MANAGER_Initialize();
    //SPI1_Initialize();
}

void OSCILLATOR_Initialize(void)
{

    // DOZEN disabled; DOZE 1:8; CPDIV 1:1; RCDIV FRC/2; ROI disabled; 
    CLKDIV = 0x3100;
    // Set the secondary oscillator
    
}

/**
    void PIN_MANAGER_Initialize(void)
*/
void PIN_MANAGER_Initialize(void)
{
    /**************************************************  **************************
     * Setting the GPIO of PORTB
     **************************************************  *************************/
    LATB = 0x00;
    TRISB = 0xFFFF;
    /**************************************************  **************************
     * Setting the GPIO of PORTC
     **************************************************  *************************/
    LATC = 0x00;
    TRISC = 0xF000;
    /**************************************************  **************************
     * Setting the GPIO of PORTD
     **************************************************  *************************/
    LATD = 0x00;
    TRISD = 0x0FFF;
    /**************************************************  **************************
     * Setting the GPIO of PORTE
     **************************************************  *************************/
    LATE = 0x00;
    TRISE = 0xFF;
    /**************************************************  **************************
     * Setting the GPIO of PORTF
     **************************************************  *************************/
    LATF = 0x00;
    TRISF = 0x3B;
    /**************************************************  **************************
     * Setting the GPIO of PORTG
     **************************************************  *************************/
    LATG = 0x00;
    TRISG = 0x034C;

    /**************************************************  **************************
     * Setting the Analog/Digital Configuration SFR
     **************************************************  *************************/
    ANSB = 0xFFFF;
    ANSC = 0x6000;
    ANSD = 0xC0;
    ANSF = 0x01;
    ANSG = 0x00;

    /**************************************************  **************************
     * Set the PPS
     **************************************************  *************************/
    __builtin_write_OSCCONL(OSCCON & 0xbf); // unlock PPS
    RPINR20bits.SDI1R = 0x15;    // RG6-›SPI1:SDI1
    RPOR13bits.RP26R = 0x07;    // RG7-›SPI1:SDO1
    RPOR9bits.RP19R = 0x08;    // RG8-›SPI1:SCK1OUT
    RPOR13bits.RP27R = 0x09;    // RG9-›SPI1:SS1OUT
    __builtin_write_OSCCONL(OSCCON | 0x40); // lock   PPS
}





    main()
IEC0bits.SPI1IE = 0; // Disable the interrupt
// SPI1CON1 Register Settings
SPI1CON1bits.DISSCK = 0; // Internal serial clock is enabled
SPI1CON1bits.DISSDO = 0; // SDOx pin is controlled by the module
SPI1CON1bits.MODE16 = 1; // Communication is word-wide (16 bits)
SPI1CON1bits.MSTEN = 1; // Master mode enabled
SPI1CON1bits.SMP = 0; // Input data is sampled at the middle of data output time
SPI1CON1bits.CKE = 0; // Serial output data changes on transition from
// Idle clock state to active clock state
SPI1CON1bits.CKP = 0; // Idle state for clock is a low level;
// active state is a high level
SPI1STATbits.SPIEN = 1; // Enable SPI module

{
    SPI1BUF=0x000A; 
    Nop();
    Nop();
    while(_SPI1IF == 0);//вот тут часто записывается фигня
    Nop();
while(1);
}
<VenoM> вне форума  
Непрочитано 02.09.2015, 23:27  
varostov
Прописка
 
Регистрация: 14.10.2006
Адрес: Ростов-на-Дону
Сообщений: 112
Сказал спасибо: 14
Сказали Спасибо 32 раз(а) в 21 сообщении(ях)
varostov на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от ‹VenoM› Посмотреть сообщение
корректное значение записывается через раз в буфер SPI1BUF
Насколько я помню, в регистр SPIxBUF не только записываются данные на передачу, в процессе передачи синхронно осуществляется приём данных с другой стороны. Если эти данные (пусть они и холостые) не считывать, возникает ошибка, которая нарушает работу модуля. Поэтому после фиксации факта окончания передачи (неважно, по прерыванию или поллингом SPI1STATbits.SPIRBF) требуется считать содержимое SPIxBUF. Если результат не интересует, команда может упроститься:

SPI1BUF;

Можно взять полностью работающий драйвер целиком или из MAL (извините, MLA), или из примеров к отладочным платам, или воспользоваться новомодным МСС (MicrochipCodeConfigurator), который вставит в код готовые драйвера.
varostov вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Осваиваем USBee Kabron Микроконтроллеры, АЦП, память и т.д 2196 29.11.2020 22:43
Proteus PIC24 CNEN2??Gluk?? rubel Proteus, KiCAD и другие ECAD 1 09.06.2011 17:45
PIC24 CTMU rubel Микроконтроллеры, АЦП, память и т.д 11 20.05.2010 15:56
PIC24 terminal VGA + отладка с USBee AX PRO dosikus Микроконтроллеры, АЦП, память и т.д 7 23.04.2010 19:08
MPLAB C Compiler for PIC24 dsPIC avr123-nm-ru Микроконтроллеры, АЦП, память и т.д 4 25.11.2009 22:53


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


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